ID:               37277
 Updated by:       [EMAIL PROTECTED]
 Reported By:      frank at cleverbridge dot com
-Status:           Open
+Status:           Assigned
-Bug Type:         *XML functions
+Bug Type:         DOM XML related
 Operating System: Linux 2.6.12-1.1381_FC3 i686 ath
 PHP Version:      5.1.3
-Assigned To:      
+Assigned To:      rrichards
 New Comment:

Fix is coming. Until then use the cloneNode() method instead of the
clone keyword.


Previous Comments:
------------------------------------------------------------------------

[2006-05-02 15:04:05] frank at cleverbridge dot com

Description:
------------
Since 5.1.3 you cannot copy a dom object. References still work. The
implementation of the xml extension seam to have changed.

Reproduce code:
---------------
Since 5.1.3 the following code does not work anymore:

<?php

$dom1 = new DomDocument('1.0', 'UTF-8');

$xml = '<foo />';
$dom1->loadXml($xml);

print "<xmp>\n".$dom1->saveXML()."</xmp>\n";

$node = clone $dom1->documentElement;

$dom2 = new DomDocument('1.0', 'UTF-8');
$dom2->appendChild($dom2->importNode($node->cloneNode(true), TRUE));

print "<xmp>\n".$dom2->saveXML()."</xmp>\n";

$dom3 = clone $dom1;

print "<xmp>\n".$dom3->saveXML()."</xmp>\n";

?>

Expected result:
----------------
<?xml version="1.0"?>
<foo/>

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

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


Actual result:
--------------
&lt;?xml version="1.0"?&gt; &lt;foo/&gt;
Warning: DOMNode::cloneNode() [function.DOMNode-cloneNode]: Couldn't
fetch DOMElement in /www/content/
spielzeug/xslt/513.php on line 13

Warning: DOMDocument::importNode() expects parameter 1 to be DOMNode,
null given in /www/content/
spielzeug/xslt/513.php on line 13

Warning: DOMNode::appendChild() expects parameter 1 to be DOMNode, null
given in /www/content/
spielzeug/xslt/513.php on line 13
&lt;?xml version="1.0" encoding="UTF-8"?&gt;
Warning: DOMDocument::saveXML() [function.DOMDocument-saveXML]:
Couldn't fetch DOMDocument in /www/content/
spielzeug/xslt/513.php on line 19


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=37277&edit=1

Reply via email to