函数名:DOMDocument::createProcessingInstruction()
适用版本:所有 PHP 版本
用法:该函数用于在 DOM 文档中创建一个新的处理指令节点。
语法:DOMDocument::createProcessingInstruction(string $target, string $data): DOMProcessingInstruction|false
参数:
$target
:目标名称,表示处理指令的目标标记。$data
:处理指令的数据部分,通常是一个字符串。
返回值:
- 成功时,返回 DOMProcessingInstruction 对象,表示创建的处理指令节点。
- 失败时,返回 false。
示例:
// 创建一个新的 DOM 文档
$dom = new DOMDocument('1.0', 'utf-8');
// 创建处理指令节点
$pi = $dom->createProcessingInstruction('php', 'echo "Hello, World!";');
// 将处理指令节点添加到文档中
$dom->appendChild($pi);
// 输出序列化后的文档内容
echo $dom->saveXML();
输出结果:
<?php echo "Hello, World!";?>
解释:
在上面的示例中,我们首先创建了一个新的 DOM 文档对象 $dom
,然后使用 createProcessingInstruction()
函数创建了一个名为 php
的处理指令节点,其数据部分为 echo "Hello, World!";
。
接着,我们将创建的处理指令节点添加到文档中,通过 $dom->appendChild($pi)
实现。最后,使用 $dom->saveXML()
将文档内容序列化并输出。
输出结果是一个以 <?php
开头的处理指令节点,该节点的内容是 echo "Hello, World!";
,表示将执行这段 PHP 代码。
注意事项:
- 目标名称
$target
必须符合 XML 规范,且不能以 "xml" 开头,否则会抛出异常。 - 数据部分
$data
会被当做纯文本处理,无法包含 XML 标记或实体引用。 - 创建的处理指令节点可以使用
$dom->appendChild()
方法添加到文档中的其他节点中。