ホームページ >バックエンド開発 >PHPチュートリアル >不要なラッパータグなしで DOMDocument HTML を保存するにはどうすればよいですか?

不要なラッパータグなしで DOMDocument HTML を保存するにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-15 07:47:15789ブラウズ

How to Save DOMDocument HTML Without Unwanted Wrapper Tags?

HTML ラッパーを使用せずに DOMDocument の HTML を保存する方法?

問題ステートメント:

以下のコード スニペットは保存を試みますXML、HTML、body、および p タグ ラッパーを含まない DOMDocument の HTML コンテンツですが、コンテンツがブロックレベルの要素が含まれています。

$postarray['post_content'] = $d->saveXML($d->getElementsByTagName('p')->item(0));

loadHTML オプションで修正します:

この問題を解決するには、次のオプションを指定してloadHTML() メソッドを使用します。

$html->loadHTML($content, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);

これらのオプションは、暗黙の要素やデフォルトを追加せずに HTML を解析するように Libxml に指示します。 doctype:

  • LIBXML_HTML_NOIMPLIED: 暗黙の HTML/body 要素の自動追加をオフにします。
  • LIBXML_HTML_NODEFDTD: デフォルトの doctype が追加されないようにします。追加されていない場合に追加される

結果:

これらのオプションを使用すると、saveHTML() は不要なラッパーなしで HTML コンテンツを出力します。

注:

  • Libxml LIBXML_HTML_NOIMPLIED に​​は 2.6 が必要です。
  • LIBXML_HTML_NODEFDTD には Libxml 2.7.8 が必要です。

以上が不要なラッパータグなしで DOMDocument HTML を保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。