2 votes

Supprimer un div avec preg_replace

J'essaie de supprimer cette division

<div id="myid" class="myclass">other_tags_here</div>

J'utilise

preg_replace ("/<div id=\"myid\" class=\"myclass\">/", "", $buffer)

mais cela ne supprime que la première balise d'ouverture alors que je veux supprimer les balises d'ouverture et de fermeture ainsi que toutes les balises intermédiaires.

Gracias

5voto

FailedDev Points 15104

Ne faites pas ça. Veuillez utiliser la très belle Fonctions DOM de PHP .

Bien qu'une regex puisse être écrite pour correspondre à votre cas particulier, elle sera fragile .

1voto

Xeus Points 135

Afin de supprimer tout ce qui se trouve entre les éléments, vous devez faire quelque chose comme ceci

    preg_replace ("/<div id=\"myid\" class=\"myclass\">.*?<\/div>/", "", $buffer);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X