次のXMLコードがあり、SimpleXMLを使用する必要があります。
<CATEGORY_TREE>/Gry/Puzzle/puzzle/</CATEGORY_TREE>
<CATEGORY_NAME>/Gry/Puzzle/puzzle/</CATEGORY_NAME>
$node->CATEGORY_TREE
/Gry/Puzzle/puzzle/
どちらが正しいかを返します。
生の値を取得する方法はあります/Gry/Puzzle/puzzle/
か?
LibXML2ベースのXMLパーサー(SimpleXML、DOM、XMLReader)を使用しない場合のみ。それらはすべて、事前定義されたエンティティの置き換えを強制します。
保存時に、libxml2は、整形式の問題を防ぐために必要に応じて事前定義されたエンティティの変換を強制し、それらをcharに透過的に置き換えます(つまり、DOMツリーにエンティティ参照要素を生成したりreference()SAXを呼び出したりしないことに注意してください入力でそれらを見つけるときのコールバック)。
XMLパーサーの場合、「/」と「+」は同じです。エンティティをXMLで保存するには、&
エスケープする必要があります。DOMでテキストノードとして作成すると、シリアル化のためにDOMがそれを実行することがわかります。
$document = new DOMDocument();
$document
->appendChild($document->createElement('CATEGORY_TREE'))
->appendChild($document->createTextNode('/Gry/Puzzle/puzzle/'));
echo $document->saveXml();
出力:
<?xml version="1.0"?>
<CATEGORY_TREE>/Gry&#47;Puzzle/puzzle/</CATEGORY_TREE>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加