The Little Guy Posted October 14, 2010 Share Posted October 14, 2010 I would like to take the following xml file, and convert it to a nice array. Is there any functions to do this or any suggestions how to do this? xml file: <?xml version="1.0" encoding="UTF-8"?> <users> <instructions> <phpfile>users.php</phpfile> </instructions> <users action="multiple"> <user> <name>root</name> <password>5f4dcc3b5aa765d61d8327deb882cf99</password> <permissions> <access>CREATE_USR</access> </permissions> </user> <users> </users> Desired array: Array ( [instructions] => Array ( [phpfile] => users.php ) [users] => Array ( [0] => Array ( [name] => root [password] => 5f4dcc3b5aa765d61d8327deb882cf99 [permissions] => Array( [access] => CREATE_USR ) ) ) ) Link to comment https://forums.phpfreaks.com/topic/215837-xml-pretty-array/ Share on other sites More sharing options...
gizmola Posted October 14, 2010 Share Posted October 14, 2010 http://www.php.net/manual/en/function.simplexml-load-file.php or load-string(). If you read the manual comments for this page there are multiple implementations that people posted of converting the simplexml object to an array. Link to comment https://forums.phpfreaks.com/topic/215837-xml-pretty-array/#findComment-1122034 Share on other sites More sharing options...
The Little Guy Posted October 14, 2010 Author Share Posted October 14, 2010 I keep getting this error: Warning: simplexml_load_file(): I/O warning : failed to load external entity "<?xml version="1.0" encoding="ISO-8859-1"?> <users> <instructions> <phpfile>users.php</phpfile> </instructions> <users action="multiple"> <user> <name>root</name> <password>5f4dcc3b5aa765d61d8327deb882cf99</password> <permissions> <access>CREATE_USR</access> </permissions> </user> </users> </users>" in C:\Users\Ryan\Documents\NetBeansProjects\Database\FFD\FFD.php on line 46 Link to comment https://forums.phpfreaks.com/topic/215837-xml-pretty-array/#findComment-1122046 Share on other sites More sharing options...
kenrbnsn Posted October 14, 2010 Share Posted October 14, 2010 If you use simplexml_load_file, the XML needs to be in a file. Use simplexml_load_string when passing a string. Ken Link to comment https://forums.phpfreaks.com/topic/215837-xml-pretty-array/#findComment-1122048 Share on other sites More sharing options...
The Little Guy Posted October 14, 2010 Author Share Posted October 14, 2010 haha, got it! I was passing the xml string, not the file Link to comment https://forums.phpfreaks.com/topic/215837-xml-pretty-array/#findComment-1122049 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.