PHP | DOMNode insertBefore()函数
DOMNode::insertBefore()函数是PHP中的一个内置函数,用于在另一个节点之前插入一个新节点。
句法:
DOMNode DOMNode::insertBefore( DOMNode $newNode, DOMNode $refNode )
参数:该函数接受上面提到的两个参数,如下所述:
- $newNode:指定新节点。
- $refNode(可选):它指定参考节点。如果未提供,则将 newnode 附加到子节点。
返回值:该函数返回插入的节点。
例外:如果这个节点是只读的或者如果被插入的节点的前一个父节点是只读的,这个函数会抛出DOM_NO_MODIFICATION_ALLOWED_ERR 。 DOM_HIERARCHY_REQUEST_ERR ,如果此节点的类型不允许$newNode节点类型的子节点,或者如果要追加的节点是此节点的祖先之一或此节点本身,则 DOM_WRONG_DOCUMENT_ERR ,如果$newNode是从不同的如果$refNode不是此节点的子节点,则文档比创建此节点的那个 DOM_NOT_FOUND 。
下面给出的程序说明了PHP中的DOMNode::insertBefore()函数:
方案一:
createElement('p',
'This is the paragraph element!');
// Append the child
$dom->appendChild($p_element);
// Create a paragraph element
$h_element = $dom->createElement('h1',
'This is the heading element!');
// Insert heading before HTML
$dom->insertBefore($h_element, $p_element);
// Render the output
echo $dom->saveXML();
?>
输出:
This is the heading element!
This is the paragraph element!
方案二:
createElement('p',
'GeeksforGeeks, paragraph');
// Append the child
$dom->appendChild($p_element);
// Create a paragraph element
$h_element = $dom->createElement('h1',
'GeeksforGeeks, heading');
// When second argument is not provided
// It will appended to the child
$dom->insertBefore($h_element);
// Render the output
echo $dom->saveXML();
?>
输出:
GeeksforGeeks, paragraph
GeeksforGeeks, heading
参考: https://www. PHP.net/manual/en/domnode.insertbefore。 PHP