#29426 [Com]: Incomplete/inconsistent functionality
ID: 29426 Comment by: matt dot bevan at marginsoftware dot com Reported By: php at peterrobins dot co dot uk Status: Open Bug Type: SimpleXML related Operating System: Linux 2.4 PHP Version: 5.0.0 New Comment: I am also in the position where I need to be able to create and insert a SimpleXMLElement before or after an arbitrary SimpleXMLElement, then remove the previous instance. This is to move XML elements from one location in an XML file into another. I'll likely be switching to/from a DOM object to accomplish this, however. Previous Comments: [2004-09-19 17:40:18] phpbugs at ilibi dot com Either the documentation for simplexml should be clarified about exactly what can and can not be added/ edited. Or the ability to add nodes should be added to simplexml. [2004-08-08 01:18:36] cyberlot at cyberlot dot net Confirming this bug exists, Have the same problem, I need to add to a simplexml object on the fly and can't [2004-07-28 13:22:59] php at peterrobins dot co dot uk Description: According to the manual page, you can add a node with SimpleXML, but this does not seem to work, either as $xml-movie[0]-characters[0]-character[0]-age = '21'; nor as $xml-movie[0]-rating[2] = 'not bad'; Deletion works on attributes unset($xml-movie[0]-rating[1]['type']); but at node level, deletes all unset($xml-movie[0]-rating); This is inconsistent with reading where $xml-movie[0]-rating fetches the first node only. unset($xml-movie-rating); deletes all ratings for the 1st movie only. It does not appear possible to delete just 1 node unset($xml-movie[0]-rating[1]); Because objs are now refs not copies, can do this $rat = $xml-movie[0]-rating[0]; $rat['name'] = 'judge'; but not this $rat = 'new content'; nor this $rat-child[0] = 'new rating'; and if I try and do $rat-child = 'new rating'; I get 'Attempt to assign property of non-object' -- Edit this bug report at http://bugs.php.net/?id=29426edit=1
#29426 [Com]: Incomplete/inconsistent functionality
ID: 29426 Comment by: phpbugs at ilibi dot com Reported By: php at peterrobins dot co dot uk Status: Open Bug Type: SimpleXML related Operating System: Linux 2.4 PHP Version: 5.0.0 New Comment: Either the documentation for simplexml should be clarified about exactly what can and can not be added/ edited. Or the ability to add nodes should be added to simplexml. Previous Comments: [2004-08-08 01:18:36] cyberlot at cyberlot dot net Confirming this bug exists, Have the same problem, I need to add to a simplexml object on the fly and can't [2004-07-28 13:22:59] php at peterrobins dot co dot uk Description: According to the manual page, you can add a node with SimpleXML, but this does not seem to work, either as $xml-movie[0]-characters[0]-character[0]-age = '21'; nor as $xml-movie[0]-rating[2] = 'not bad'; Deletion works on attributes unset($xml-movie[0]-rating[1]['type']); but at node level, deletes all unset($xml-movie[0]-rating); This is inconsistent with reading where $xml-movie[0]-rating fetches the first node only. unset($xml-movie-rating); deletes all ratings for the 1st movie only. It does not appear possible to delete just 1 node unset($xml-movie[0]-rating[1]); Because objs are now refs not copies, can do this $rat = $xml-movie[0]-rating[0]; $rat['name'] = 'judge'; but not this $rat = 'new content'; nor this $rat-child[0] = 'new rating'; and if I try and do $rat-child = 'new rating'; I get 'Attempt to assign property of non-object' -- Edit this bug report at http://bugs.php.net/?id=29426edit=1
#29426 [Com]: Incomplete/inconsistent functionality
ID: 29426 Comment by: cyberlot at cyberlot dot net Reported By: php at peterrobins dot co dot uk Status: Open Bug Type: SimpleXML related Operating System: Linux 2.4 PHP Version: 5.0.0 New Comment: Confirming this bug exists, Have the same problem, I need to add to a simplexml object on the fly and can't Previous Comments: [2004-07-28 13:22:59] php at peterrobins dot co dot uk Description: According to the manual page, you can add a node with SimpleXML, but this does not seem to work, either as $xml-movie[0]-characters[0]-character[0]-age = '21'; nor as $xml-movie[0]-rating[2] = 'not bad'; Deletion works on attributes unset($xml-movie[0]-rating[1]['type']); but at node level, deletes all unset($xml-movie[0]-rating); This is inconsistent with reading where $xml-movie[0]-rating fetches the first node only. unset($xml-movie-rating); deletes all ratings for the 1st movie only. It does not appear possible to delete just 1 node unset($xml-movie[0]-rating[1]); Because objs are now refs not copies, can do this $rat = $xml-movie[0]-rating[0]; $rat['name'] = 'judge'; but not this $rat = 'new content'; nor this $rat-child[0] = 'new rating'; and if I try and do $rat-child = 'new rating'; I get 'Attempt to assign property of non-object' -- Edit this bug report at http://bugs.php.net/?id=29426edit=1