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


PHP DOMNamedNodeMap getNamedItemNS()用法及代码示例


DOMNamedNodeMap::getNamedItemNS()函数是PHP中的内置函数,用于检索具有特定本地名称和名称空间URI的节点。此函数可用于从特定名称空间获取属性的值。

用法:

DOMNode DOMNamedNodeMap::getNamedItemNS
( string $namespaceURl, string $localName )

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


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

返回值:此函数返回具有给定本地名称和名称空间URI的节点。

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

程序1:在此示例中,我们将获得具有两个不同名称空间的元素的属性值。

<?php 
// Create a new DOMDocument 
$dom = new DOMDocument(); 
  
// Create an element with namespace 
$node = $dom->createElementNS( 
   "my_namespace", "x:p", 'Hello, this is my paragraph.'); 
  
// Add the node to the dom 
$newnode = $dom->appendChild($node); 
  
// Set the attribute with a namespace 
$newnode->setAttributeNS("my_namespace", "style", "color:blue"); 
  
echo "<b>Attributes with my_namespace as namespace:</b> <br>"; 
  
// Get the attribute value 
$attribute =  
   $node->attributes->getNamedItemNS('my_namespace', 'style')->nodeValue; 
echo $attribute; 
  
echo "<br><b>Attributes with other_namespace as namespace:</b> <br>"; 
  
// Get the attribute value 
$attribute =  
   $node->attributes->getNamedItemNS('other_namespace', 'style')->nodeValue; 
echo $attribute; 
?>

输出:

Attributes with my_namespace as namespace:
color:blue
Attributes with other_namespace as namespace:
// Empty string means no attributes found.

程序2:在此示例中,我们将通过更改attribute的值来检查该函数是否获取最新的属性值。

<?php 
// Create a new DOMDocument 
$dom = new DOMDocument(); 
  
// Create an element 
$node = $dom->createElementNS("my_namespace", "x:p", 'GeeksforGeeks'); 
  
// Add the node to the dom 
$newnode = $dom->appendChild($node); 
  
// Set the attribute with a namespace 
$newnode->setAttributeNS("my_namespace", "style", "color:blue"); 
  
echo "<b>Before:</b> <br>"; 
  
// Get the attribute value 
$attribute =  
    $node->attributes->getNamedItemNS('my_namespace', 'style')->nodeValue; 
echo $attribute; 
  
// Change the attribute value  
$newnode->setAttributeNS("my_namespace", "style", "color:red"); 
  
echo "<br><b>After:</b> <br>"; 
  
// Get the attribute value 
$attribute =  
    $node->attributes->getNamedItemNS('my_namespace', 'style')->nodeValue; 
echo $attribute; 
?>

输出:

Before:
color:blue
After:
color:red

参考: https://www.php.net/manual/en/domnamednodemap.getnameditemns.php



相关用法


注:本文由纯净天空筛选整理自gurrrung大神的英文原创作品 PHP | DOMNamedNodeMap getNamedItemNS() function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。