读取XML文件并写入php数组/文件

时间:2011-02-24 11:50:07

标签: php xml dom

  

可能重复:
  Read XML file and write to a php array/file

您好,

我需要更新我网站的国家/地区列表,我想自动完成此过程。国家列表可以在这里找到 http://www.iso.org/iso/country_codes...code_lists.htm

我试过这种方式 - http://www.w3schools.com/php/php_xml_parser_expat.asp(PHP XML Expat Parser) 然而,这似乎不太好用,因为我很困惑在哪里实际“获取”数据并将其打印到我自己的数组中供以后使用。

现在我想尝试使用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函数来完成这个简单的任务?

对此方面的任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

支持dom的

simple + xml = simplexml

答案 1 :(得分: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;
}