Or use XMLReader::ELEMENT and XMLReader::END_ELEMENT rather than the numbers 1 and 15.
XMLReader::getAttribute
(PHP 5 >= 5.1.2)
XMLReader::getAttribute — 名前をもとに、属性の値を取得する
説明
string
XMLReader::getAttribute
( string $name
)
指定した名前の属性の値を返します。属性が存在しなかったり 現在位置が要素ノードでなかったりした場合には NULL を返します。
パラメータ
- name
-
属性の名前。
返り値
属性の値を返します。指定した名前 name の 属性が見つからなかったり、現在位置が要素ノードではなかったりした場合には NULL を返します。
変更履歴
| バージョン | 説明 |
|---|---|
| 5.1.3 | 属性が見つからない場合に NULL を返すようになりました。 これより前のバージョンでは空文字列を返していました。 |
参考
- XMLReader::getAttributeNo() - インデックスをもとに、属性の値を取得する
- XMLReader::getAttributeNs() - 名前および URI をもとに、属性の値を取得する
Anonymous
16-Feb-2011 09:02
Gabi
02-Jul-2007 08:15
might be obvious, but not to everyone ;-) ... when reading attributes from a node that has sub-nodes (and creating an output from this node), the output will be issued twice, once on the <ELEMENT> tag and once on the end tag </ELEMENT>. To avoid this, you can test on which part of the node you are using the property nodeType.
It'll be 1 for the element, 15 for the end element.
