用php解析xml文件

用php解析xml文件,php,xml-parsing,Php,Xml Parsing,我有一个xml文件,它由国家名称和代码组成 <country> <name>ALBANIA</name> <code>AL</code> </country> <country> <name>ALGERIA</name> <code>DZ</code> </country> <country> &l

我有一个xml文件,它由国家名称和代码组成

<country>
    <name>ALBANIA</name>
    <code>AL</code>
</country>

<country>
    <name>ALGERIA</name>
    <code>DZ</code>
</country>

<country>
    <name>AMERICAN SAMOA</name>
    <code>AS</code>
</country>
现在,我使用以下php代码将它们存储在数组中,并打印themcountry.xml文件,该文件与此php代码位于同一文件夹中

$countries = array();
$file = new SimpleXMLElement(__DIR__ . '/country.xml', null, true);
foreach ($file->country as $country) {
        $name = trim($country['name']);
    $code = trim(strtoupper($country['code']));

    $countries[$code] = $name;
    echo $code;
}
但这段php代码显示的是空白页面。有谁能告诉我哪里出错,帮我改正错误,或者给我一些更好的方法来解析xml文件。

PHP中的将完成这项工作

<?php
$xml = simplexml_load_file('country.xml');
$i=0;

$countryName=array();
$countryCode=array();

foreach($xml as $k=>$v)
{
    $countryName[$i] = (string) $xml->country[$i]->name;
    $countryCode[$i] = (string) $xml->country[$i]->code;
$i++;
}

print_r($countryName);
print_r($countryCode);

?>

我还需要在数组[code]=name中存储国家名称。@user2673943,编辑了答案。谢谢Shankar解决了我的问题。