このような形式のXMLファイルがいくつかあります
...
<section>
<header>Headline</header>
<par>Some text <em>here</em> and more text.</par>
</section>
....
最初は、PHP のプル パーサー XMLReader を使用してファイルを処理し、リーダーが実行するノード タイプに応答することができました。これはすべて非常にうまく機能しましたが、コードが肥大化したように感じ、必要なコンテキスト情報がいくつかあったため、追加の状態をドラッグする必要がありました。たとえば、<header>
タグは、セクションまたはサブセクション タグの子になることができます。
そこで、XML ドキュメントを再帰的なデータ構造として表現し、XPath 機能を提供する SimpleXML に切り替えました。状態がなくなり (ヘッダー タグなどのコンテキストを照会できるため)、コードははるかにコンパクトになります。
ただし...タグのノード"Some text "
と" and more text."
子ノードにアクセスするにはどうすればよいですか? <par>
それは可能ですか、それとも SimpleXML でスープを解析できませんか? DOMDocument 実装を使用する方がよいでしょうか?もしそうなら、どれを使用しますか? SimpleXML との違いはどこですか?