Problème avec preg_replace
arthezius
Messages postés
3756
Statut
Membre
-
prosthetiks Messages postés 1309 Statut Membre -
prosthetiks Messages postés 1309 Statut Membre -
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. »