1. 程式人生 > >使用simplexml處理xml文件的Tips

使用simplexml處理xml文件的Tips

acc 操作 人的 func his fun 註意 cor arrays

Php中處理xml有多種方式,SimpleXML比較簡潔,對於簡單的應用比較適合。不過SimpleXML不適用於包含namespacexml,而且要保證xml格式完整(well-formed)。而且SimpleXML讀取xml文件是一次讀入,處理非常大的文件的時候要註意。

php網站打開PHP Manual -》 Function Reference -》 XML Manipulation

技術分享圖片

可以看到處理XML的方式還是挺多的不過大部分的處理使用SimpleXML足夠了

SimpleXML的使用可以參考php的文檔

PHP Manual -》 Function Reference -》 XML ManipulationàSimpleXML

http://php.net/manual/en/book.simplexml.php

文檔中對於基本的使用,錯誤處理等都有說明。這裏僅僅介紹一個方便處理的小技巧。

$xml = simplexml_load_file(‘xml_file.xml‘);

讀取xml所獲的的$xml的每一個元素都是一個SimpleXMLElement,有些時候處理起來可能不太方便例如在使用變量access某個節點的時候

echo $xml->node[$var_string] //$var_string 是一個變化的string

一些操作可能並不方便而且易出錯。至少在我個人的程序中,解引用嵌套多層的時候,會出現取不到值的情況。

對於這種情況,可以把$xml轉換為數組,處理起來更方便,不熟悉SimpleXML的程序員也會感覺更順手

For me it was easier to use arrays than objects, So, I used this code,

$xml = simplexml_load_file(‘xml_file.xml‘);

$json_string = json_encode($xml);

$result_array = json_decode($json_string, TRUE);

這段代碼來自於php.netsimplexmlUser Contributed Notes

參考

1 php 解析xml 的四種方法(轉)

http://www.cnblogs.com/likwo/archive/2011/08/24/2151793.html

2 SimpleXML 使用詳細例子

http://www.cnblogs.com/likwo/archive/2011/08/24/2151836.html

3 PHP Manual à Function Reference à XML ManipulationàSimpleXML

http://php.net/manual/en/book.simplexml.php

使用simplexml處理xml文件的Tips