What is the difference between
$table = $doc->createElement('table');
$doc->appendChild($table);
$tr = $doc->createElement('tr');
$table->appendChild( $tr );
$td = $doc->createElement('td');
$tr->appendChild($td);
and
$table = $doc->createElement('table');
$tr = $doc->createElement('tr');
$table->appendChild( $tr );
$td = $doc->createElement('td', 'Competition');
$tr->appendChild($td);
Is it really necessary to have the first append child? It seems to work without it, but I don't see any noticeable changes when I remove it. I just want to confirm it's the same thing in that case.
What about other single tags?
$p1 = $doc->createElement('p', 'test text1');
$p2 = $doc->createElement('p', 'test text1');
Would it be necessary to create an append child for each $p1
and $p2
?
From the documentation:
DOMDocument::createElement
This function creates a new instance of class
DOMElement
. This node will not show up in the document unless it is inserted with (e.g.)DOMNode::appendChild()
.
Therefore you must call DOMNode::appendChild()
to insert the node into the document. Running your second block of code will not do so (Tested under: PHP 5.3.5, libxml 2.7.7).