ホームページ > バックエンド開発 > PHPチュートリアル > エンコードせずに HTML を PHP DOMNode に追加するにはどうすればよいですか?

エンコードせずに HTML を PHP DOMNode に追加するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-11-19 14:20:03
オリジナル
912 人が閲覧しました

How to append HTML to a PHP DOMNode without encoding?

PHP DOMNode への HTML の挿入

エンコードせずに HTML を既存の DOMNode に追加するには、DOMDocumentFragment::appendXML を利用します。

// DOM setup
$dom = new DOMDocument;
$dom->loadXML('<html><body/></html>');
$body = $dom->documentElement->firstChild;

// Append HTML fragment
$template = $dom->createDocumentFragment();
$template->appendXML('<h1>This is <em>my</em> template</h1>');
$body->appendChild($template);

// Output
echo $dom->saveXml();
ログイン後にコピー

出力:

<?xml version="1.0"?>
<html><body><h1>This is <em>my</em> template</h1></body></html>
ログイン後にコピー

別の DOMDocument からのインポート

// Load another DOMDocument
$tpl = new DOMDocument;
$tpl->loadXML('<h1>This is <em>my</em> template</h1>');

// Import and append
$body->appendChild($dom->importNode($tpl->documentElement, TRUE));
ログイン後にコピー

不正な形式の HTML のインポート

// Enable libxml error handling
libxml_use_internal_errors(true);

// Load and import HTML
$tpl = new DOMDocument;
$tpl->loadHtml('<h1>This is <em>malformed</em> template</h1></h2>');
$body->appendChild($dom->importNode($tpl->documentElement, TRUE));

// Disable libxml error handling
libxml_use_internal_errors(false);
ログイン後にコピー

以上がエンコードせずに HTML を PHP DOMNode に追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート