PHP.mk документација

DOMNode::appendChild

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

domnode.appendchild.php PHP.net прокси Преводот е вчитан
Оригинал на PHP.net
Патека domnode.appendchild.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + преведен приказ Кодовите, табелите и белешките остануваат читливи во истиот тек.
DOMNode::appendChild

Референца за `domnode.appendchild.php` со подобрена типографија и навигација.

domnode.appendchild.php

DOMNode::appendChild

класата mysqli_driver

DOMNode::appendChild Додава нов потомок на крајот од потомците

= NULL

public DOMNode::appendChild(DOMNode $node): DOMNode|false

Додава нов потомок на крајот од потомците Оваа функција додава потомок на постоечка листа на потомци или создава нова листа на потомци. Потомок може да се создаде со на пр., DOMDocument::createElement() DOMDocument::createTextNode()

Кога користите постоечки јазол, тој ќе биде преместен.

Параметри

node

итн. или едноставно со користење на кој било друг јазол.

Вратени вредности

Додадениот потомок. false при грешка.

Errors/Exceptions

Може да фрли DOMException со следните кодови за грешки:

DOM_NO_MODIFICATION_ALLOWED_ERR

Покренато ако овој јазол е само за читање или ако претходниот родител на јазолот што се вметнува е само за читање.

DOM_HIERARCHY_REQUEST_ERR

Покренато ако овој јазол е од тип што не дозволува деца од типот на node јазол, или ако јазолот што треба да се додаде е еден од предците на овој јазол или самиот овој јазол.

DOM_WRONG_DOCUMENT_ERR

Покренато ако node е создаден од различен документ од оној што го создал овој јазол.

Примери

Јазолот додаден или

Следниот пример ќе додаде нов јазол на елемент во нов документ.

<?php

$doc
= new DOMDocument;

$node = $doc->createElement("para");
$newnode = $doc->appendChild($node);

echo
$doc->saveXML();
?>

Пример #1 Додавање потомок

<?php

$doc
= new DOMDocument;

$headNode = $doc->createElement("head");
$doc->appendChild($headNode);

$titleNode = $doc->createElement("title");
$headNode->appendChild($titleNode);

echo
$doc->saveXML();
?>

Види Исто така

Белешки од корисници 4 белешки

- Додава нов потомок пред референтен јазол
пред 17 години
What's not mentioned here is that DOMNode::appendChild() can also be used to move an existing node to another part of the DOMDocument, e.g.

<?php
$doc = new DOMDocument();
$doc->loadXML("<foobar><bar/><foo/></foobar>");
$bar = $doc->documentElement->firstChild;
$foo = $doc->documentElement->lastChild;
$foo->appendChild($bar);
print $doc->saveXML();
?>

This produces:

<?xml version="1.0"?>
<foobar><foo><bar/></foo></foobar>

Note that the nodes "<foo/>" and "<bar/>" were siblings, i.e. the first and last child of "<foobar>" but using appendChild() we were able to move "<bar/>" so that it is a child of "<foo/>".

This saves you the trouble of doing a DOMNode::removeChild($bar) to remove "<bar/>" before appending it as a child of "<foo/>". 

Kris Dover
- Поврзува име со приклучок
пред 8 години
If you want to move the children of one node to another, you cannot simply iterate on $element->childNodes - you have to make an array first:

<?php
$children = [];
foreach ($elemWithChildren->childNodes as $child) {
    $children[] = $child;
}
foreach ($children as $child) {
    $targetElement->appendChild($child);
}
?>
frame на dynamiccreated dot de
пред 15 години
Aware dealing with DOMNodeList and appendChild() on the same Node.

If you want to replace only the children not the DOMElement itself you probably foreach childNodes-property or get the DOMElements with a for-loop and item()-method of the DOMNodeList.

You will fail if you not clone the received single DOMElement. Actually the count of the DOMNodelist will be decreased on appendChild count but appendChild seems to refer to the old Nodelist and nothing visible will happen. Cloning will help.
krisdover на hotmail точка com
пред 17 години
If you want to create nested DOM elements:

<?php
    $doc = new DOMDocument();
    
    $foo = $doc->createElement("foo");
    $doc->appendChild($foo);

    $bar = $doc->createElement("bar");
    $foo->appendChild($bar);

    $bazz = $doc->createElement("bazz");
    $foo->appendChild($bazz);

    echo $doc->saveXML();
?>

Is equivalent to:

<foo>
  <bar></bar>
  <bazz></bazz>
</foo>
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.