📜  PHP | DOMDocument createAttributeNS()函数(1)

📅  最后修改于: 2023-12-03 15:03:36.715000             🧑  作者: Mango

PHP | DOMDocument createAttributeNS()函数

简介

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()方法获取指定命名空间和标签名的属性节点。