xml檔案在php**開發的輕量級應用中使用非常廣泛,而php解析和讀取xml檔案的方式有很多種,比如js dom、******xml、xpath等方式解析xml檔案,今天來講講在php中使用xpath解析xml的例項,同時通過xpath解析xml的例項來介紹部分基礎的xpath語法。
xpath是什麼?
xapth主要用來在xml文件中查詢資訊的工具,通過使用路徑表示式可以解析xml檔案,讀取xml檔案中的資料。
php解析xml推薦教程:php4和php5版本下解析xml文件的操作方法
需要php解析的xml文件:
<?xmlversion ="1.0"encoding="gbk"?>
php**開發-程式設計客棧php教程-jb51.net
php**開發
php教程
php程式設計客棧;
seo
php**開發
xpath語法教程
/表示從xml檔案中的根節點開始解析
//表示在xml檔案中匹配已選擇的當前節點,且不考慮其位置關係(類似於sql中模糊查詢)
. 表示選取當前節點
..表示選取當前節點的父節點
@表示匹配具體的節點或屬性
php解析xml例項第一步
$xml = ******xml_load_file('leapsoulcn.xml');
說明:使用php ******xml載入需要解析的xml文件,******xml預設php5支援。
例項一:
foreach($xml->xpath('leapsoulinfo')as $value)
說明:在這個xpath例項中通過xpath查詢指定節點,以陣列形式返回其所有的子節點,並通過php的print_r函式列印出最終的陣列結構。
例項二:
foreach($xml->xpath('leapsoulinfo/name')as $value)
說明:在這個xpath例項中通過xpath路徑表示式的方式指定需要xapth查詢的某個特定子節點,以陣列形式返回這個子節點的元素。
例項三:
foreach($xml->xpath('//name')as $value)
說明:在這個xpath例項中通過使用//表示使用xpadjrgeeycth查詢xml檔案中所有name節點的元素,與上乙個xpath例項的區別在於name沒有位置關係。
例項四:
foreach($xml->xpath('leapsoulinfo//name')as $value)
說明:php解析xml檔案中指定節點下的某個子節點,以陣列形式返回其所有子節點,忽略指定的這個子節點在leapsoulinfoxml中的位置關係。
例項五:
foreach($xml->xpath("//name/keywords/keyword[@keyid='1']")as $value)
說明:在需要php解析的xml檔案中通過xpath查詢keyid=1的元素,以陣列形式返回。
ok,上述幾個php x程式設計客棧path例項教程是php解析xml檔案最基礎的方法,通過合理使用xpath路徑表示式可以進行複雜的xml查詢和解析,使用起來感覺和sql一樣方便。
ps:這裡再為大家提供幾款關於xml操作的**工具供大家參考使用:
**xml/json互相轉換工具:
**格式化xml/**壓縮xmwww.cppcns.coml:
xml**壓縮/格式化工具:
xml****格式化美化工具:
PHP使用xpath解析XML例項教程
xml檔案在php 開發的輕量級應用中使用非常廣泛,而php解析和讀取xml檔案的方式有很多種,比如js dom xml xpath等方式解析xml檔案,今天來講講在php中使用xpath解析xml的例項,同時通過xpath解析xml的例項來介紹部分基礎的xpath語法。xpath是什麼?xapth...
java通過XPATH解析XML
日常開發過程中會遇到很多種xml檔案 source方面的解析 1 基於soap協議負載方式傳輸時伺服器會返回source,此時,需要將source解析成本地資料 jaxbcontext ctx jaxbcontext.newinstance user.class user物件 source resp...
C 通過XPath解析xml檔案
xpath語法講解 用xpath解析xml的用例在這裡 xpath裡面涉及到的一些引數的方法名 以上主要是我之前蒐集的,但是工作中還是遇到了一些小問題,比如說如何刪除乙個xmlnode。為此,我做了以下demo static void main string args removeall清除所有屬性...