X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=php5%2Fxml-template.php;h=5defe73b01e041b45fcd7134cf5e451d5d444419;hb=0f0ee7cfedd7ca82871b51bc05d7b89801fcce6a;hp=9b89e93ff3dfef229a62117c19b6e30c1f41b98f;hpb=d7c5342ecfee59408ef3c410e40ac9502ebd0077;p=xml-template diff --git a/php5/xml-template.php b/php5/xml-template.php index 9b89e93..5defe73 100644 --- a/php5/xml-template.php +++ b/php5/xml-template.php @@ -11,7 +11,7 @@ function XML_Template_process_file($filename, $obj, $clean = 1) function XML_Template_process($node, $obj, $clean = 1) { if (is_a($obj, 'DOMNode')) { # overwrite - while ($node->childeNodes->length > 0) { + while ($node->childNodes->length > 0) { $child = $node->childNodes->item(0); $node->removeChild($child); } @@ -25,14 +25,14 @@ function XML_Template_process($node, $obj, $clean = 1) XML_Template_process($frag, array(), $clean); $node->appendChild($frag); } else if (!is_array($obj)) { # overwrite - for ($i = 0; $i < $node->childNodes->length; ++$i) { - $child = $node->childNodes->item($i); - $node->removeChild($child); + while ($node->childNodes->length > 0) { + $node->removeChild($node->firstChild); } $doc = $node->ownerDocument; $node->appendChild($doc->createTextNode($obj)); } else if (is_associative_array($obj)) { # substitute - for ($i = 0; $i < $node->childNodes->length; ++$i) { + $num_children = ($node->childNodes == null) ? 0 : $node->childNodes->length; + for ($i = 0; $i < $num_children; ++$i) { $child = $node->childNodes->item($i); $processed = false;