<?php
function xml_to_array($xml,$main_heading = '') {
$deXml = simplexml_load_string($xml);
$deJson = json_encode($deXml);
$xml_array = json_decode($deJson,TRUE);
if (! empty($main_heading)) {
$returned = $xml_array[$main_heading];
return $returned;
} else {
return $xml_array;
}
}
$xml = '
<users>
<user>
<first_name>John</first_name>
<last_name>Doe</last_name>
<address>
<line1>123 Street</line1>
<line2>Apt. 9</line2>
<city>Chicago</city>
</address>
</user>
<user>
<first_name>abc</first_name>
<last_name>443</last_name>
<address>
<line1>777 Street</line1>
<line2>Apt. 776</line2>
<city>vvv</city>
</address>
</user>
</users>';
$data_array = xml_to_array($xml);
var_dump($data_array);
- Output for 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.0 - 5.5.38, 5.6.0 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- array(1) {
["user"]=>
array(2) {
[0]=>
array(3) {
["first_name"]=>
string(4) "John"
["last_name"]=>
string(3) "Doe"
["address"]=>
array(3) {
["line1"]=>
string(10) "123 Street"
["line2"]=>
string(6) "Apt. 9"
["city"]=>
string(7) "Chicago"
}
}
[1]=>
array(3) {
["first_name"]=>
string(3) "abc"
["last_name"]=>
string(3) "443"
["address"]=>
array(3) {
["line1"]=>
string(10) "777 Street"
["line2"]=>
string(8) "Apt. 776"
["city"]=>
string(3) "vvv"
}
}
}
}
- Output for 5.0.0 - 5.0.5, 5.1.0 - 5.1.6
- Fatal error: Call to undefined function json_encode() in /in/HLls9 on line 4
Process exited with code 255. - Output for 4.4.5 - 4.4.9
- Fatal error: Call to undefined function: simplexml_load_string() in /in/HLls9 on line 3
Process exited with code 255. - Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.4
- Fatal error: Call to undefined function: simplexml_load_string() in /in/HLls9 on line 3
Process exited with code 255. - Output for 4.3.0 - 4.3.1
- Fatal error: Call to undefined function: simplexml_load_string() in /in/HLls9 on line 3
preferences:
236.56 ms | 401 KiB | 352 Q