📅  最后修改于: 2023-12-03 15:03:36.715000             🧑  作者: Mango
createAttributeNS()
方法是PHP DOMDocument类中的一个方法,用于创建一个具有指定的名称和命名空间的属性节点对象。
public DOMAttr DOMDocument::createAttributeNS(string $namespaceUri, string $qualifiedName)
参数说明:
$namespaceUri
:命名空间URI字符串。$qualifiedName
:所创建属性的限定名。函数返回值:返回一个新的DOMAttr对象,表示一个属性节点。
示例一:创建一个具有命名空间的属性节点
// 创建DOM文档对象
$doc = new DOMDocument();
// 创建新的元素节点
$rootNode = $doc->createElementNS('https://www.example.com/ns', 'root');
$doc->appendChild($rootNode);
// 创建具有命名空间的属性节点
$attrNode = $doc->createAttributeNS('https://www.example.com/ns', 'example:attr');
$attrNode->value = 'attribute';
$rootNode->appendChild($attrNode);
// 输出XML内容
echo $doc->saveXML();
输出结果:
<?xml version="1.0"?>
<root xmlns="https://www.example.com/ns" xmlns:example="https://www.example.com/ns" example:attr="attribute"/>
示例二:获取属性节点对象的值
// 加载XML字符串
$xmlString = <<<XML
<?xml version="1.0"?>
<root xmlns="https://www.example.com/ns" xmlns:example="https://www.example.com/ns" example:attr="attribute"/>
XML;
$doc = new DOMDocument();
$doc->loadXML($xmlString);
// 获取属性节点对象的值
$attrNode = $doc->getElementsByTagNameNS('https://www.example.com/ns', 'attr')->item(0);
echo $attrNode->value;
输出结果:
attribute
createAttributeNS()
方法可以创建具有命名空间的属性节点对象,常用于XML文档的创建和解析过程中。要注意的是,在使用该方法创建属性节点时,需要指定该属性节点的命名空间URI和限定名;在获取属性节点对象时,可以使用getElementsByTagNameNS()
方法获取指定命名空间和标签名的属性节点。