ID: 44478
User updated by: vesko at webstudiobulgaria dot com
Reported By: vesko at webstudiobulgaria dot com
Status: Open
Bug Type: SimpleXML related
Operating System: Debian testing
PHP Version: 5.2.5
New Comment:
Based on:
$xml_element = new simpleXMLElement('<root></root>');
$xml_element['attrib1'] = 'a & b';
$xml_element->addAttribute('attrib2','c & d');
print $xml_element['attrib1'];
print $xml_element['attrib2'];
which gives:
a & bc & d
I guess the correct behaviour is to leave the entities as they are, so
in the previous example addChild() gives the wring result.
Previous Comments:
------------------------------------------------------------------------
[2008-03-19 12:22:56] vesko at webstudiobulgaria dot com
Description:
------------
There is a difference in the way the html entities are handled when the
new nodes are assigned in different ways. In case of using addChild
method they are decoded, otherwise not.
Reproduce code:
---------------
$xml_element = new simpleXMLElement('<root></root>');
$xml_element->node1 = 'a & b';
$xml_element->addChild('node2','c & d');
print $xml_element->node1;
print $xml_element->node2;
Expected result:
----------------
a & bc & d//both left
or
a & bc & d//both decoded
Actual result:
--------------
a & bc & d//one left and the other decoded
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=44478&edit=1