函数名称:XMLWriter::writeAttributeNs()
函数描述:在当前元素上写入具有命名空间的属性。
适用版本:PHP 5 >= 5.1.3, PHP 7
语法:XMLWriter::writeAttributeNs(string $prefix, string $namespaceURI, string $qualifiedName, string $value)
参数:
- $prefix:属性的命名空间前缀。
- $namespaceURI:属性的命名空间URI。
- $qualifiedName:属性的限定名称(带有命名空间前缀)。
- $value:属性的值。
返回值:成功时返回 true,失败时返回 false。
示例:
// 创建一个新的XMLWriter对象
$writer = new XMLWriter();
// 打开字符串缓冲区以便于写入XML内容
$writer->openMemory();
// 启用命名空间支持
$writer->setIndent(true);
$writer->setIndentString(' ');
$writer->startDocument('1.0', 'UTF-8', 'yes');
// 开始一个元素
$writer->startElement('book');
// 写入具有命名空间的属性
$writer->writeAttributeNs('xsi', 'http://www.w3.org/2001/XMLSchema-instance', 'schemaLocation', 'http://www.example.com/book.xsd');
// 写入元素的内容
$writer->text('PHP Programming');
// 结束元素
$writer->endElement();
// 结束文档
$writer->endDocument();
// 获取XML内容
$xml = $writer->outputMemory();
// 输出XML内容
echo $xml;
以上示例将输出以下XML内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<book xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.example.com/book.xsd">PHP Programming</book>
在示例中,我们创建了一个XMLWriter对象并打开了一个字符串缓冲区来写入XML内容。我们启用了命名空间支持,并使用writeAttributeNs()
函数在book
元素上写入了一个具有命名空间的属性。最后,我们结束了元素和文档,并将XML内容输出到屏幕上。