2011-02-24 125 views
2

可能重複:
Read XML file and write to a php array/file讀取XML文件,並寫入一個PHP陣列/文件

嗨,

我需要更新我的網站和我的國家名單想要使過程自動化。國家名單可以在這裏找到 http://www.iso.org/iso/country_codes...code_lists.htm

我嘗試了這種方式 - http://www.w3schools.com/php/php_xml_parser_expat.asp(PHP的XML Expat解析器) 然而,這似乎並沒有很好地工作,因爲我很困惑在哪裏其實「得到」的數據和打印到我自己的陣列供以後使用。

現在我想嘗試使用XML DOM (http://www.php.net/manual/en/book.domxml.php)。

只是想檢查與每個人,如果我有一個簡單的XML文件中讀取,包含國家代碼和國家名稱如下:

<Entry> 
    <Country_name>AFGHANISTAN</Country_name> 
    <Code_element>AF</Code_element> 
</Entry> 

我想讀這個文件(DOM方法)然後將數據提供給我的網站訪問的單獨的文件/數組。你會用什麼PHP xml函數來推薦這個簡單的任務?

在這方面的任何幫助表示讚賞。

+0

您使用PHP 4或5嗎? – salathe 2011-02-24 13:02:29

+0

請不要發佈重複的問題。你有原始答案。如果你不喜歡這些,你應該問一個不同的問題。 – 2011-02-24 13:20:02

回答

0

對於您所提供的樣品,這裏使用的DOMDocument解析它的代碼。

$countries = array(); 
$dom = new DOMDocument(); 
$dom->load('/path/to/file.xml'); 
foreach ($dom->getElementsByTagName('Entry') as $entry) { 
    $country_name = $entry->getElementsByTagName('Country_name')->item(0)->textContent; 
    $country_code = $entry->getElementsByTagName('Code_element')->item(0)->textContent; 
    $countries[$country_code] = $country_name; 
}