Hello, je cherche à réaliser un ptit script permettant, à partir d'une chaîne comme [a|5][bbc|10]azertyuiop[12|12]
de retourner aaaaabbc....bbcazertuyiop12121212...12
(vous l'avez compris, de remplacer tous les [chaîne|valeur] par valeur fois chaîne ).
mon code:
$resultat = preg_replace('#\[([^|]*)\|([0-9]*)\]#', str_repeat("$1", "$2"), $contenu);
mais je récupère un "unexpected T_LNUMBER, expecting T_VARIABLE or '$'", alors que si je fais
$resultat = preg_replace('#\[([^|]*)\|([0-9]*)\]#', "$1", $contenu);
aucun bug. cependant, ça me retourne "abbcazertyuiop12" (et évidemment c'est pas ça que je veux :/ )
Alors je ne comprend pas , on peut retourner "$1" et "$2" mais pas les utiliser comme arguments? (même résultat si j'écris la fonction str_replace moi même...)
Si vous voyez ce qui cloche, merci d'avance....
Partager