php對xml的XPath操作
阿新 • • 發佈:2019-02-16
通過DOM結構點位節點,在資料量很大的情況下速度下降的厲害。解決方法是XPath。
XPath作用:用於快速定位節點
XPath實現查詢功能:
<?php //XPath $doc = new DOMDocument(); $doc->preserveWhiteSpace=false; $doc->load('books.xml'); //通過文件生成此文件的路徑 $xpath = new DOMXPath($doc); //查詢所有的書 $query = "/books/book/name"; $result = $xpath->query($query); foreach ($result as $bookname){ echo $bookname->nodeValue . '<br/>'; } echo "<br/>==========================================<br/>"; //查詢所有靜態語言的圖書 $query = "/books/book[@type='靜態語言']/name"; $result = $xpath->query($query); foreach ($result as $bookname){ echo $bookname->nodeValue . '<br/>'; } echo "<br/>==========================================<br/>"; //通過位置來查詢 $query = "/books/book[position()=3]/name"; $result = $xpath->query($query); foreach ($result as $bookname){ echo $bookname->nodeValue . '<br/>'; } echo "<br/>==========================================<br/>";
執行結果: