Problème avec preg_replace
arthezius
Messages postés
3538
Date d'inscription
Statut
Membre
Dernière intervention
-
prosthetiks Messages postés 1189 Date d'inscription Statut Membre Dernière intervention -
prosthetiks Messages postés 1189 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je suis en train de m'arracher les cheveux sur un morceau de code et je ne comprends pas d'où vient le problème.
Peut-être aurez-vous une idée d'où vient le problème.
Voici la portion de code qui pose problème:
L'idée étant de partir de la chaine:
et de la modifier en
Malheureusement, en l'état, je reçois:
Les attributs style et height sont restés alors qu'ils ne devraient pas.
Je n'arrive pas à comprendre d'où vient mon erreur.
Le code de la chaîne à modifier provient de TinyMCE. Les valeurs sont donc susceptible de changer, d'où l'utilisation de preg_replace.
Merci par avance à ceux qui pourront m'aider.
« La recherche commence là où s'arrête la connaissance. »
Je suis en train de m'arracher les cheveux sur un morceau de code et je ne comprends pas d'où vient le problème.
Peut-être aurez-vous une idée d'où vient le problème.
Voici la portion de code qui pose problème:
function clear_img($img) { $pattern = array( '/\width="(.*?)"/is', '/\height="(.*?)"/is', '/\style="(.*?)"/is', ); $replace = array( 'class="preview_img_cat"', '', '', ); $img = preg_replace($pattern, $replace, $img); return $img; } $img[0]='<img style="float: right;" src="http://localhost/gouzy/files/1378044761_f22jfi73.png" alt="" width="150" height="141" />'; $img[0] = clear_img($img[0]);
L'idée étant de partir de la chaine:
<img style="float: right;" src="http://localhost/gouzy/files/1378044761_f22jfi73.png" alt="" width="150" height="141" />
et de la modifier en
<img src="http://localhost/gouzy/files/1378044761_f22jfi73.png" alt="" class="preview_img_cat" />
Malheureusement, en l'état, je reçois:
<img style="float: right;" src="http://localhost/gouzy/files/1378044761_f22jfi73.png" alt="" class="preview_img_cat" height="141" />
Les attributs style et height sont restés alors qu'ils ne devraient pas.
Je n'arrive pas à comprendre d'où vient mon erreur.
Le code de la chaîne à modifier provient de TinyMCE. Les valeurs sont donc susceptible de changer, d'où l'utilisation de preg_replace.
Merci par avance à ceux qui pourront m'aider.
« La recherche commence là où s'arrête la connaissance. »