- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHP5 domDocumentで簡単に深いノードを取得する。但し、SimpleXMLを使わない)
PHP5 domDocumentで深いノードを簡単に取得する方法
このQ&Aのポイント
- PHP5のdomDocumentを使って、SimpleXMLを使わずに深いノードを取得する方法について解説します。
- domDocumentを使用することで、<D2>の値を簡単に取得することができます。
- 階層が深くなっても、$rootを使用することで1行程度でノードの値を取得することができます。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
<?php header("Content-Type:text/plain"); function test1(){ $dom = new domDocument(); $dom->load("Q5264137-1.xml"); // 一行では無理 $root = $dom->documentElement; $xpath = new DOMXPath($dom); print_r($xpath->query("Items/B2/C/D2",$root)->item(0)->nodeValue); // 指定された階層にある指定された名前のノード print("\n"); print_r($xpath->query("//D2",$root)->item(0)->nodeValue); //階層を問わず指定された名前のノード。ただし最下層であることは保障されない。 } test1(); //他にネストを減らす手として再帰を使う手もあるよね。何かうまくかけないから書かないけど。 ?>