0

私はまだ PHP と XML のコツをつかもうとしています。スペースを節約するために切り捨てる XML があります。各レコードからディメンション名属性の表示名の値を取得したいと考えています。また、各レコードからservermanagerステータス値も取得する必要があります。

私が使用していた:

$completeurl = "http://website/data.xml";
$xml = simplexml_load_file($completeurl);
$xml->dimension;

for ($i = 0; $i < 2; $i++) {
    $servername = $dimensions[$i]->attributes()->display-name;
    $status = $dimensions[$i]->servermanager;
};

しかし、私は得ています:

Fatal error: Call to a member function attributes() on a non-object in the lines I am trying to assign variables.

解析したくないディメンション間のすべての余分なデータを削除しています。切り捨てられた XML は次のとおりです。

<?xml version="1.0"?>
<aostats version="0.6" timestamp="2013-02-13 21:16:01 UTC">
    <dimension name="d1" display-name="Atlantean" loadmax="2" locked="0" players="100%">
        <servermanager status="1"/>
        <clientmanager status="0"/>
        <chatserver status="1"/>
    </dimension>
    <dimension name="d2" display-name="Rimor" loadmax="2" locked="0" players="100%">
        <servermanager status="1"/>
        <clientmanager status="0"/>
        <chatserver status="1"/>
    </dimension>
    <dimension name="dt" display-name="Test" loadmax="2" locked="0" players="100%">
        <servermanager status="1"/>
        <clientmanager status="0"/>
    </dimension>
</aostats>
4

1 に答える 1

0

私は実験して自分で答えを見つけました:

$completeurl = = "http://website/data.xml";
$xml = simplexml_load_file($completeurl);
$dimensions  = $xml->dimension;
for ($i = 0; $i < 3; $i++) {
$servername = $dimensions[$i]["display-name"];
$status = $dimensions[$i]->servermanager["status"];
}
于 2013-02-14T12:33:03.433 に答える