Réponse acceptée !
AAAAAAAAAAAAAAAAAAAAAAHHHHHHHHHHHHHHHHHHHHHHHHHHHH
Ca y est, je viens de comprendre (j'avais mal lu, mais après une bonne douche, on y voit plus clair, j'ai à nouveau la lumière à tous les étages...)
Alors...
Il faut utiliser une expression régulière pour choper l'image. Admettons qu'il y en ait plusieurs (ça marchera donc quelque soit le nombre)
Code PHP :
preg_match_all('`(<img[^>]+>)`', $content, $images);
A partir de là, $images est un tableau qui contient toutes les balises <img /> qui se trouvent dans $content. Si aucune image n'est trouvée, $images est un tableau vide.
Ensuite, il faut les supprimer de $content, si j'ai bien compris...
Code PHP :
$new_content = str_replace($images[0], '', $content);
preg_match_all retourne le nombre de concordances trouvées dans la chaîne sujet. Pour ne pas faire faire du travail inutile à PHP, autant tester qu'on a bien des résultats...
Code PHP :
$nb = preg_match_all('`(<img[^>]+>)`', $content, $images);
if (false !== $nb && 0 < $nb) {
$content = str_replace($images[0], '', $content);
}
Pour supprimer les images dans la chaîne d'origine, on pourrait aussi utiliser la même expression régulière avec preg_replace(). Je ne sais pas si c'est plus coûteux en performances, il est possible que non si PHP met les expressions régulières déjà compilées en cache... A tester, mais c'est un peu du détail de l'ordre du centième de milliseconde...
--
Neige
N'hésitez pas à lire la
doc