DOMDocument::getElementsByTagNameNS()函數是PHP中的內置函數,用於在指定的命名空間中搜索具有給定標簽名稱的所有元素。
用法:
DOMNodeList DOMDocument::getElementsByTagNameNS( string $namespaceURI, string $localName )
參數:該函數接受上述和以下所述的兩個參數:
- $namespaceURI:它指定要匹配的元素的名稱空間URI,*匹配所有名稱空間。
- $localName:它指定要匹配的元素的本地名稱,並且*匹配所有本地名稱。
返回值:此函數返回具有給定的本地名稱和名稱空間URI的所有元素的DOMNodeList。
下麵給出的程序說明了PHP中的DOMDocument::getElementsByTagNameNS()函數:
程序1:在此示例中,我們將獲取具有特定名稱空間的元素的本地名稱和前綴。
<?php
// Create a XML
$xml = <<<EOD
<?xml version="1.0" ?>
<!-- this is the namespace -->
<chapter xmlns:xi="my_namespace">
<title>Books of the other guy..</title>
<para>
<xi:include>
<xi:fallback>
</xi:fallback>
</xi:include>
</para>
</chapter>
EOD;
$dom = new DOMDocument;
// Load the XML string defined above
$dom->loadXML($xml);
// Use getElementsByTagName to get
// the elments from xml
foreach ($dom->getElementsByTagNameNS(
'my_namespace', '*') as $element) {
echo '<b>Local name:</b> ',
$element->localName,
', <b>Prefix:</b>',
$element->prefix, "<br>";
}
?>
輸出:
Local name: include, Prefix: xi Local name: fallback, Prefix: xi
程序2:在此示例中,我們將獲取某個命名空間的元素數量。
<?php
// Create a XML
$xml = <<<EOD
<?xml version="1.0" ?>
<!-- this is the namespace -->
<chapter xmlns:xi="my_namespace">
<title>Books of the other guy..</title>
<para>
<xi:include> <!-- 1st -->
<xi:fallback> <!-- 2nd -->
</xi:fallback>
</xi:include>
<xi:include> <!-- 3rd -->
<xi:fallback> <!-- 4th -->
</xi:fallback>
</xi:include>
</para>
</chapter>
EOD;
$dom = new DOMDocument();
// Load the XML string defined above
$dom->loadXML($xml);
// It will count all occurance of
// xi inside my_namespace
$elements = $dom->getElementsByTagNameNS(
'my_namespace', '*');
print_r($elements->length);
?>
輸出:
4
參考: https://www.php.net/manual/en/domdocument.getelementsbytagnamens.php
相關用法
- PHP DOMDocument loadXML()用法及代碼示例
- PHP DOMDocument load()用法及代碼示例
- PHP DOMDocument save()用法及代碼示例
- PHP DOMDocument getElementsByTagName()用法及代碼示例
- PHP DOMDocument loadHTML()用法及代碼示例
- PHP DOMDocument loadHTMLFile()用法及代碼示例
- PHP DOMDocument normalizeDocument()用法及代碼示例
- PHP DOMDocument schemaValidate()用法及代碼示例
- PHP DOMDocument createProcessingInstruction()用法及代碼示例
- PHP DOMDocument relaxNGValidate()用法及代碼示例
- PHP DOMDocument relaxNGValidateSource()用法及代碼示例
- PHP DOMDocument createEntityReference()用法及代碼示例
- PHP DOMDocument saveHTML()用法及代碼示例
- PHP DOMDocument saveHTMLFile()用法及代碼示例
- PHP DOMDocument importNode()用法及代碼示例
注:本文由純淨天空篩選整理自gurrrung大神的英文原創作品 PHP | DOMDocument getElementsByTagnameNS() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。