函数名: DOMNode::replaceChild()
适用版本: PHP 4 >= 4.0.5, PHP 5, PHP 7
函数描述: 用新的子节点替换当前节点的指定子节点
用法: DOMNode::replaceChild ( DOMNode $newnode , DOMNode $oldnode ) : DOMNode|false
参数:
- $newnode: 替换节点的新节点
- $oldnode: 需要替换的旧节点
返回值:
- 如果替换成功,则返回被替换的旧节点。如果替换失败,则返回false。
示例1:
// 创建一个XML DOM文档
$dom = new DomDocument;
$dom->loadXML('<root><child1>节点1</child1><child2>节点2</child2></root>');
// 获取根节点
$root = $dom->documentElement;
// 获取需要替换的旧节点
$oldNode = $root->getElementsByTagName('child1')->item(0);
// 创建一个新的节点
$newNode = $dom->createElement('child3', '节点3');
// 替换节点
$replacedNode = $root->replaceChild($newNode, $oldNode);
// 打印替换成功的节点内容
echo $replacedNode->nodeName . ': ' . $replacedNode->nodeValue; // 输出: child1: 节点1
示例2:
// 创建一个XML DOM文档
$dom = new DomDocument;
$dom->loadXML('<root><child1>节点1</child1><child2>节点2</child2></root>');
// 获取根节点
$root = $dom->documentElement;
// 获取需要替换的旧节点
$oldNode = $root->getElementsByTagName('child2')->item(0);
// 创建一个新的节点
$newNode = $dom->createElement('child3', '节点3');
// 替换节点
$replacedNode = $root->replaceChild($newNode, $oldNode);
// 打印替换成功的节点内容
echo $replacedNode->nodeName . ': ' . $replacedNode->nodeValue; // 输出: child2: 节点2
以上示例展示了如何使用DOMNode::replaceChild()
函数将一个节点替换为另一个节点。通过传入新节点和旧节点作为参数,可以实现节点的替换。函数会返回被替换的旧节点,如果替换失败,则返回false。