3

我需要使用外部 XML 文件,我尝试了不同的方法来读取文件,但无法达到我想要的。

我用了DOMDocument simplexml_load_file

<?

$xml = simplexml_load_file("http://www.isecur1ty.org/InternetThreat/ThreatLevel.xml");

echo $xml->getName() . "<br />";

foreach($xml->children() as $child)
{
    echo $child->getName() . ": " . $child . "<br />";
}

?>

但不能让它和我一起工作!

这是 XML 文件:

<iS-InternetThreat>
    <level>
        <current>2</current>
        <previous>2</previous>
        <status>same</status>
        <date>09-06-2012</date>
    </level>
    <version>2.5</version>
</iS-InternetThreat>

如您所见,有多个级别。我需要获取每个属性的值(主要在“级别”下),获取版本也可以。

有人可以告诉我该怎么做吗?

谢谢。

4

2 回答 2

6

像这样访问它们:

<?php
    $xml = simplexml_load_file("http://www.isecur1ty.org/InternetThreat/ThreatLevel.xml");
    echo $xml->level->date;
?>
于 2012-06-10T08:50:22.163 回答
4

好的,明白了:D

这是解决方案,希望任何人都可以发现它有用。

<?

    $file = 'http://www.isecur1ty.org/InternetThreat/ThreatLevel.xml';
    if(!$xml = simplexml_load_file($file))
        exit('Failed to open '.$file);
    print_r($xml);  echo "<br />";
    echo "Current Level : " . $xml->level->current . "<br />" .
        "Previous Level : " . $xml->level->previous . "<br />" . 
        "Status : " . $xml->level->status . "<br />" . 
        "Date : " . $xml->level->date . "<br />" . 
        "Version : " . $xml->version . "<br />"

?>
于 2012-06-10T08:50:26.510 回答