PHP SimpleXML - 获取属性值 - 循环

时间:2018-02-24 21:43:15

标签: php xml loops foreach

我不知道为什么我没有从xml文件中得到我想要的所有结果。

这是我的代码:

<?php
$xml=simplexml_load_file("http://2strok.com/gen/maler.xml") or 
     die("Error: Cannot create object");
    foreach($xml->children() as $books) { 
    echo $books->XResult->Contacts->XContact->Name . "<br>";
    echo $books->XResult->Contacts->XContact->Value . "<br>"; 
    echo $books->XResult->Contacts->XContact->VisitationAddress . "
    <br>"; 
            } 
?> 

我使用php foreach但我只获得第一行:(

1 个答案:

答案 0 :(得分:2)

您可以尝试这样的事情:

$xml=simplexml_load_file("http://2strok.com/gen/maler.xml") or
     die("Error: Cannot create object");
foreach($xml->ResultList->XResult as $res) {
    if ($res->Contacts->XContact) {
        echo $res->Contacts->XContact->Name . "<br>";
        echo $res->Contacts->XContact->Value . "<br>";
        echo $res->Contacts->XContact->VisitationAddress . "<br>";
    }
}

或者,如果您想要所有联系人:

$xml=simplexml_load_file("http://2strok.com/gen/maler.xml") or
     die("Error: Cannot create object");
foreach($xml->ResultList->XResult as $res) {
    foreach ($res->Contacts->XContact as $elm) {
        echo $elm->Name . "<br>";
        echo $elm->Value . "<br>";
        echo $elm->VisitationAddress . "<br>";
    }
}