そのまんま!
DOMDocument->getElementsByTagNameNS()
(no version information, might be only in CVS)
DOMDocument->getElementsByTagNameNS() --
指定した名前空間で、タグ名に対応するすべての要素を検索する
説明
class
DOMDocument {
DOMNodeList
getElementsByTagNameNS ( string namespaceURI, string localName )
}
指定したローカル名および名前空間 URI に一致するすべての要素の
DOMNodeList を返します。
パラメータ
namespaceURI
条件に一致する要素の名前空間 URI。
* はすべての名前空間に一致します。
localName
条件に一致する要素のローカル名。
* はすべてのローカル名に一致します。
返り値
一致するすべての要素を含む、新しい DOMNodeList
オブジェクトを返します。
例
例 1. すべての XInclude 要素を取得する
<?php
$xml = <<<EOD <?xml version="1.0" ?> <chapter xmlns:xi="http://www.w3.org/2001/XInclude"> <title>Books of the other guy..</title> <para> <xi:include href="book.xml"> <xi:fallback> <error>xinclude: book.xml not found</error> </xi:fallback> </xi:include> <include> This is another namespace </include> </para> </chapter> EOD; $dom = new DOMDocument;
// 上で定義した XML 文字列を読み込みます $dom->loadXML($xml);
foreach ($dom->getElementsByTagNameNS('http://www.w3.org/2001/XInclude', '*') as $element) { echo 'local name: ', $element->localName, ', prefix: ', $element->prefix, "\n"; } ?>
|
上の例の出力は以下となります。 local name: include, prefix: xi
local name: fallback, prefix: xi |
|