方法:DOMElement::setIdAttributeNS()
适用版本:PHP 5+
用法:
DOMElement::setIdAttributeNS() 方法用于将指定的属性设置为元素的ID属性。该方法的语法如下:
bool DOMElement::setIdAttributeNS ( string $namespaceURI , string $qualifiedName , bool $isId )
参数说明:
- $namespaceURI:属性的命名空间URI。如果不需要命名空间,则传入NULL。
- $qualifiedName:属性的限定名(带命名空间前缀的属性名)。
- $isId:指定该属性是否为ID属性。如果为true,则将属性设置为ID属性;如果为false,则将属性设置为普通属性。
返回值:如果成功设置属性为ID属性,则返回true;如果设置失败,则返回false。
示例:
// 创建一个XML文档
$xmlDoc = new DOMDocument();
// 创建一个元素节点
$element = $xmlDoc->createElementNS("http://example.com", "ns:element");
// 设置元素的属性
$element->setAttributeNS("http://example.com", "ns:id", "elementId");
$element->setAttribute("name", "John");
// 将属性设置为ID属性
$element->setIdAttributeNS("http://example.com", "ns:id", true);
// 输出元素及属性信息
echo $element->tagName; // 输出:ns:element
echo $element->getAttributeNS("http://example.com", "id"); // 输出:elementId
echo $element->getAttribute("name"); // 输出:John
在上面的示例中,我们首先创建了一个XML文档,并使用createElementNS()
方法创建了一个元素节点。然后,我们使用setAttributeNS()
方法设置了一个具有命名空间的属性(ns:id),并设置属性值为"elementId",然后使用setAttribute()
方法设置了一个普通属性(name),并设置属性值为"John"。
最后,在调用setIdAttributeNS()
方法将命名空间为http://example.com
,限定名为ns:id
的属性设置为ID属性之后,我们通过getAttributeNS()
方法和getAttribute()
方法获取了属性值,验证了属性已经成功设置为ID属性。