I'm trying to build my first public API, which is going pretty fine, but i ran into some trouble converting different data formats that will get POSTed. Basically, the API should accept both JSON and XML, and now i'm trying to convert those into a common PHP array structure.
For JSON my example looks like this:
$people = array( array('name' => 'casper',
'shoesize' => 41
),
array('name' => 'christine',
'shoesize' => 37
)
);
$data = json_encode($people);
return json_decode($data);
This will result in:
[{"name":"casper","shoesize":"41"},{"name":"charlotte","activated":"1"}]
The XML example is as follows:
$xml = '<?xml version="1.0"?>'.
'<people>'.
'<person>'.
'<name>casper</name>'.
'<shoesize>41</shoesize>'.
'</person>'.
'<person>'.
'<name>christine</name>'.
'<shoesize>37</name>'.
'</person>'.
'</people>';
$xml = simplexml_load_string($xml);
$data = json_encode($xml);
return json_decode($data);
This will result in:
{"person":[{"name":"casper","shoesize":"42"},{"name":"christina","shoesize":"12"}]}
Can anyone figure out how i will be able to achieve the same array structure in both examples?