PHP で SimpleXMLElement を使用した
SimpleXMLElement を使用して CDATA タグを含む XML ドキュメントを操作する場合、そのコンテンツにアクセスすると、 NULL 値が返される場合があります。この問題を解決する方法は次のとおりです。
CDATA コンテンツへのアクセス
CDATA タグのコンテンツに正しくアクセスするには、SimpleXMLElement オブジェクトを直接エコーするか、SimpleXMLElement オブジェクトをstring.
$content = simplexml_load_string( '<content><![CDATA[Hello, world!]]></content>' ); echo (string) $content; // Output: Hello, world!<p><strong>を使用するLIBXML_NOCDATA</strong></p> <p>または、SimpleXMLElement オブジェクトの作成時に LIBXML_NOCDATA フラグを使用して、CDATA タグの削除を抑制できます。</p> <pre class="brush:php;toolbar:false">$content = simplexml_load_string( '<content><![CDATA[Hello, world!]]></content>' , null , LIBXML_NOCDATA ); echo (string) $content; // Output: <![CDATA[Hello, world!]]>
親要素を使用した例
CDATAタグが内側にある場合親要素の場合は、-> を使用してアクセスできます。演算子。
$foo = simplexml_load_string( '<foo><content><![CDATA[Hello, world!]]></content></foo>' ); echo (string) $foo->content; // Output: <![CDATA[Hello, world!]]>
以上がPHP の SimpleXMLElement を使用して CDATA コンテンツにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。