PHPでXMLの属性(attributes)情報を取得する方法。

属性の値は、対象のタグのSimpleXMLElementオブジェクトに対して、
attributesメソッドを使うことに依りその対象タグの属性一覧を得ることが
できます。

また、attributesメソッドで得られた結果もオブジェクトなので、
文字列として得たい場合は、stringでキャストする必要があります。

以下に例を示します。

<?php

$data = '';
$data .= "";
$data .= "";
$data .= "dada1";
$data .= "dada2";
$data .= "dada3";
$data .= "dada4";
$data .= "dada5";
$data .= "";
$data .= "";

$xml = simplexml_load_string($data, 'SimpleXMLElement', LIBXML_NOCDATA);

foreach($xml->middle->item as $item){
        $attributes =  $item->attributes();
        $id = (string)$attributes['id'];
        $tag = (string)$attributes['tag'];

        echo "id:".$id. "  tag:".$tag."n";
}

実行結果

$ php test.php
id:1  tag:a
id:2  tag:b
id:3  tag:c
id:4  tag:d
id:5  tag:e

/

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

2 + nine =