函数名:XMLWriter::writeElementNs()
适用版本:PHP 5 >= 5.1.2, PHP 7
用法:XMLWriter::writeElementNs() 方法用于写入带有命名空间的元素。该方法有四个参数,分别是命名空间前缀、元素的命名空间URI、元素的本地名称和元素的内容。它返回一个布尔值,表示写入是否成功。
语法:
public bool XMLWriter::writeElementNs(string $prefix, string $namespaceURI, string $name, string $content = null)
参数:
- $prefix:要使用的命名空间前缀,如果不需要命名空间,则传入空字符串。
- $namespaceURI:元素的命名空间URI。
- $name:元素的本地名称。
- $content(可选):元素的内容。
示例:
// 创建一个新的XMLWriter对象
$xmlWriter = new XMLWriter();
// 打开文件或字符串进行写入
$xmlWriter->openURI('output.xml');
// 开始文档
$xmlWriter->startDocument('1.0', 'UTF-8');
// 设置命名空间
$xmlWriter->setPrefix('ns', 'http://example.com');
// 开始根元素
$xmlWriter->startElementNs('ns', 'root', 'http://example.com');
// 写入带有命名空间的元素
$xmlWriter->writeElementNs('ns', 'book', 'http://example.com', 'PHP Programming');
// 结束根元素
$xmlWriter->endElement();
// 结束文档
$xmlWriter->endDocument();
// 输出XML内容
echo $xmlWriter->outputMemory();
上述示例中,我们创建了一个新的XMLWriter对象,并打开一个文件(output.xml)进行写入。然后,我们使用startDocument()方法开始文档,并使用setPrefix()方法设置命名空间前缀。接着,使用startElementNs()方法开始根元素,并使用writeElementNs()方法写入带有命名空间的元素。最后,使用endElement()和endDocument()方法结束根元素和文档,并使用outputMemory()方法输出XML内容。
输出结果:
<?xml version="1.0" encoding="UTF-8"?>
<ns:root xmlns:ns="http://example.com">
<ns:book>PHP Programming</ns:book>
</ns:root>
以上示例演示了XMLWriter::writeElementNs()方法的基本用法,它可以帮助你在生成XML文档时使用命名空间。