2016-08-19 13 views
0

私は以下のようなXMLを持って、PHPのSimpleXML読み取り子タグ属性

<y> 
<n> 
    <n id='test1'></n> 
    <n id='test2'></n> 
</n> 
</y> 

とは、それぞれの子の「ID」「n」は、タグを読むことをお勧めします。

私はこのPHPコードを使用しています。

$xml = simplexml_load_file("my.xml"); 
echo $xml->n[0]->n; 

が、それがあるべき

は非オブジェクト

答えて

2

のプロパティを取得しようとすると、エラーを取得:配列です$xml->n->n[0]。あなたはこのように表示される場合がありますprint_r($xml)場合:

SimpleXMLElement Object 
(
    [n] => SimpleXMLElement Object 
    (
     [n] => Array 
      (
       [0] => SimpleXMLElement Object 
        (
         [@attributes] => Array 
          (
           [id] => test1 
          ) 

        ) 

       [1] => SimpleXMLElement Object 
        (
         [@attributes] => Array 
          (
           [id] => test2 
          ) 

        ) 

      ) 

    ) 

) 
+1

...そしてあなたはこのようにそれを取得する必要がありますので、 'id'は、ノードの属性ではなくノードの値であることを忘れないでください:'エコー$ XML- > n-> n [0] ['id'] '。 –

+0

作品、ありがとう – user6618536

関連する問題