当前位置: 首页>>代码示例>>用法及示例精选>>正文


PHP DOMElement getAttributeNodeNS()用法及代码示例

DOMElement::getAttributeNodeNS()函数是PHP中的内置函数,用于获取特定命名空间中的属性节点,并带有当前节点的本地名称。

用法:

DOMAttr DOMElement::getAttributeNodeNS( string $namespaceURI, string $localName )

参数:该函数接受上述和以下描述的两个参数:


  • $namespaceURI:它指定名称空间URI。
  • $localName:它指定本地名称。

返回值:此函数返回包含属性节点的属性值。

下面给出的程序说明了PHP中的DOMElement::getAttributeNodeNS()函数:

程序1:

<?php 
  
// Create a new DOMDocument 
$dom = new DOMDocument(); 
  
// Load the XML 
$dom->loadXML("<?xml version=\"1.0\"?> 
<body xmlns:x=\"my_namespace\"> 
    <x:div x:attr=\"value\" > DIV 1 </x:div> 
</body>"); 
  
// Get the elements by tagname 
$elements = $dom->getElementsByTagName('div'); 
  
// Get the attribute node 
$node = $elements[0]->getAttributeNodeNS('my_namespace', 'attr'); 
  
// Extract name 
$name = $node->name; 
  
// Extract value 
$value = $node->value; 
  
echo $name . " => " . $value . "<br>"; 
?>

输出:

attr => value

程序2:

<?php 
  
// Create a new DOMDocument 
$dom = new DOMDocument(); 
  
// Load the XML 
$dom->loadXML("<?xml version=\"1.0\"?> 
<root> 
<body xmlns:x=\"my_namespace1\"> 
    <x:div x:id=\"my_id1\" > DIV 1 </x:div> 
    <x:div x:id=\"my_id2\" > DIV 1 </x:div> 
</body> 
<body xmlns:xi=\"my_namespace2\"> 
    <xi:div xi:id=\"new\" > DIV 1 </xi:div> 
</body> 
</root>"); 
  
// Get the elements by tagname 
$elements = $dom->getElementsByTagName('div'); 
  
foreach ($elements as $element) { 
  
    $node = $element->getAttributeNodeNS('my_namespace1', 'id'); 
  
    if ($node) { 
  
        // Extract name 
        $name = $node->name; 
  
        // Extract value 
        $value = $node->value; 
  
        echo $name . " => " . $value . "<br>"; 
    } 
} 
?>

输出:

id => my_id1
id => my_id2

参考: https://www.php.net/manual/en/domelement.getattributenodens.php



相关用法

注:本文由纯净天空筛选整理自gurrrung大神的英文原创作品 PHP | DOMElement getAttributeNodeNS() Function。非经特殊声明,原始代码版权归原作者所有,本译文的传播和使用请遵循“署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)”协议。