Énoncé du problème :
L'extrait de code ci-dessous tente d'enregistrer le contenu HTML d'un DOMDocument sans les wrappers de balises XML, HTML, body et p, mais il rencontre des problèmes lorsque le contenu contient éléments au niveau du bloc.
$postarray['post_content'] = $d->saveXML($d->getElementsByTagName('p')->item(0));
Correction avec les options loadHTML :
Pour résoudre ce problème, utilisez la méthode loadHTML() avec les options suivantes :
$html->loadHTML($content, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
Ces options demandent à Libxml d'analyser le code HTML sans ajouter d'éléments implicites ni de valeur par défaut. doctype:
Résultat :
En utilisant ces options, saveHTML() affichera désormais le contenu HTML sans les wrappers inutiles.
Remarque :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!