array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ja', ), 'this' => array ( 0 => 'domdocument.getelementsbytagnamens.php', 1 => 'DOMDocument::getElementsByTagNameNS', ), 'up' => array ( 0 => 'class.domdocument.php', 1 => 'DOMDocument', ), 'prev' => array ( 0 => 'domdocument.getelementsbytagname.php', 1 => 'DOMDocument::getElementsByTagName', ), 'next' => array ( 0 => 'domdocument.importnode.php', 1 => 'DOMDocument::importNode', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ja', 'path' => 'reference/dom/domdocument/getelementsbytagnamens.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5, PHP 7, PHP 8)
DOMDocument::getElementsByTagNameNS — 指定した名前空間で、タグ名に対応するすべての要素を検索する
指定したローカル名および名前空間 URI に一致するすべての要素の DOMNodeList を返します。
namespace
条件に一致する要素の名前空間 URI。
"*"
はすべての名前空間に一致します。
null
を渡すと、空の名前空間に一致します。
localName
条件に一致する要素のローカル名。
"*"
はすべてのローカル名に一致します。
一致するすべての要素を含む、新しい DOMNodeList オブジェクトを返します。
バージョン | 説明 |
---|---|
8.0.3 |
namespace は、nullable になりました。
|
例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