DOMElement::removeAttributeNS()函数是PHP中的内置函数,用于从元素中删除特定命名空间中具有特定本地名称的属性。
用法:
bool DOMElement::removeAttributeNS( string $namespaceURI, string $localName )
参数:该函数接受上述和以下描述的两个参数:
- $namespaceURI:它指定名称空间URI。
- $localName:它指定本地名称。
返回值:如果成功,则此函数返回TRUE;如果失败,则返回FALSE。
异常:当节点为只读时,此函数将抛出DOM_NO_MODIFICATION_ALLOWED_ERR。
以下示例说明了PHP中的DOMElement::removeAttributeNS()函数:
范例1:
<?php
// Create a new DOMDocument
$dom = new DOMDocument();
// Load the XML
$dom->loadXML("<?xml version=\"1.0\"?>
<root>
<html xmlns:x=\"my_namespace\">
<x:h1 x:id=\"my_id\"> Geeksforgeeks </x:h1>
<x:h2> Second heading </x:h2>
</html>
<html xmlns:y=\"another_namespace\">
<y:h1 id=\"my_new_id\"> Random text </y:h1>
<y:h2> Another heading </y:h2>
</html>
</root>");
// Get the elements
$nodes = $dom->getElementsByTagName('h1');
echo "Before the removal of attributes:<br>";
foreach ($nodes as $node) {
// Get the attribute name and value
$attribute = $node->attributes->item(0);
$attribute_name = $attribute->name;
$attribute_value = $attribute->value;
echo $attribute_name . ' => ';
echo $attribute_value . '<br>';
// Remove the id attribute
$node->removeAttributeNS('my_namespace', 'id');
}
echo "<br>After the removal of attributes:<br>";
foreach ($nodes as $node) {
// Get the attribute name and value
$attribute = $node->attributes->item(0);
$attribute_name = $attribute->name;
$attribute_value = $attribute->value;
echo $attribute_name . ' => ';
echo $attribute_value . '<br>';
}
?>
输出:
Before the removal of attributes: id => my_id id => my_new_id After the removal of attributes: => // Empty string means attribute is removed id => my_new_id
范例2:
<?php
// Create a new DOMDocument
$dom = new DOMDocument();
// Load the XML
$dom->loadXML("<?xml version=\"1.0\"?>
<root>
<html xmlns:x=\"my_namespace\">
<x:h1 x:id=\"my_id\">
Geeksforgeeks
</x:h1>
<x:h2> Second heading </x:h2>
</html>
<html xmlns:y=\"another_namespace\">
<y:h1 y:id=\"my_new_id\"
y:style=\"color:blue;\">
Random text
</y:h1>
<y:h2> Another heading </y:h2>
</html>
</root>");
// Get the elements
$node = $dom->getElementsByTagName('h1')[1];
echo "Before the removal of attributes:<br>";
// Get the attribute count
$attributeCount = $node->attributes->count();
echo 'No of attributes => ' . $attributeCount;
// Remove the id attribute
$node->removeAttributeNS('another_namespace', 'id');
echo "<br>After the removal of attributes:<br>";
// Get the attribute count
$attributeCount = $node->attributes->count();
echo 'No of attributes => ' . $attributeCount;
?>
输出:
Before the removal of attributes: No of attributes => 2 After the removal of attributes: No of attributes => 1
参考: https://www.php.net/manual/en/domelement.removeattributens.php
相关用法
- PHP DOMElement getAttributeNodeNS()用法及代码示例
- PHP DOMElement getAttributeNS()用法及代码示例
- PHP DOMElement getAttributeNode()用法及代码示例
- PHP DOMElement hasAttributeNS()用法及代码示例
- PHP DOMElement getAttribute()用法及代码示例
- PHP DOMElement __construct()用法及代码示例
- PHP DOMElement getElementsByTagName()用法及代码示例
- p5.js value()用法及代码示例
- PHP Ds\Map get()用法及代码示例
- PHP cos( )用法及代码示例
- p5.js sq()用法及代码示例
- CSS var()用法及代码示例
注:本文由纯净天空筛选整理自gurrrung大神的英文原创作品 PHP | DOMElement removeAttributeNS() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。