KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I am trying to convert xml to json in php. If I do a simple convert using simple xml and json_encode none of the attributes in the xml show. $xml = simplexml_load_file("states.xml"); echo json_encode($xml); So I am trying to manually parse it like this. foreach($xml->children() as $state) { $states[]= array('state' => $state->name); } echo json_encode($states); and the output for state is {"state":{"0":"Alabama"}} rather than {"state":"Alabama"} What am I doing wrong? XML: <?xml version="1.0" ?> <states> <state id="AL"> <name>Alabama</name> </state> <state id="AK"> <name>Alaska</name> </state> </states> Output: [{"state":{"0":"Alabama"}},{"state":{"0":"Alaska"} var dump: object(SimpleXMLElement)#1 (1) { ["state"]=> array(2) { [0]=> object(SimpleXMLElement)#3 (2) { ["@attributes"]=> array(1) { ["id"]=> string(2) "AL" } ["name"]=> string(7) "Alabama" } [1]=> object(SimpleXMLElement)#2 (2) { ["@attributes"]=> array(1) { ["id"]=> string(2) "AK" } ["name"]=> string(6) "Alaska" } } }
Tags (comma-separated)
Save Edits
Cancel