How to convert xml data into json using php?
In this article, we are going to see how to convert XML data into JSON format using PHP .
1. Code:
<?php
// student details xml data taken as an String
$xml = '<?xml version="1.0" encoding="utf-8"?>
<student>
<details>
<address>
<firstname>Soltuts 1</firstname>
<city>kakumanu</city>
<zip>522112</zip>
</address>
</details>
<details>
<address>
<firstname>Soltuts 2</firstname>
<city>guntur</city>
<zip>522112</zip>
</address>
</details>
<details>
<address>
<firstname>Soltuts 3</firstname>
<city>ponnur</city>
<zip>456345</zip>
</address>
</details>
<details>
<address>
<firstname>Soltuts 4</firstname>
<city>noida</city>
<zip>456644</zip>
</address>
</details>
</student>';
$xmldata = simplexml_load_string($xml);
$jsondata = json_encode($xmldata);
print_r($jsondata);
?>
2. Example:
Input:
$xml = '<?xml version="1.0" encoding="utf-8"?>
<student>
<details>
<address>
<firstname>Soltuts 1</firstname>
<city>kakumanu</city>
<zip>522112</zip>
</address>
</details>
<details>
<address>
<firstname>Soltuts 2</firstname>
<city>guntur</city>
<zip>522112</zip>
</address>
</details>
<details>
<address>
<firstname>Soltuts 3</firstname>
<city>ponnur</city>
<zip>456345</zip>
</address>
</details>
<details>
<address>
<firstname>Soltuts 4</firstname>
<city>noida</city>
<zip>456644</zip>
</address>
</details>
</student>';
Output:
{
"details": [
{
"address": {
"firstname": "Soltuts 1",
"city": "kakumanu",
"zip": "522112"
}},
{
"address": {
"firstname": "Soltuts 2",
"city": "guntur",
"zip": "522112"
}},
{ "address": {
"firstname": "Soltuts 3",
"city": "ponnur",
"zip": "456345"
}},
{ "address": {
"firstname": "Soltuts 4",
"city": "noida",
"zip": "456644"
}}
]
}