- json_decode: documentation ( source)
<?php
$j = '{"data":{"lan":[{"name":"Primary LAN Eth"},{"ip_address":"192.168.10.2"}]}}';
$jd = json_decode($j);
// var_dump($jd);
function quote($v) {
return '"'.$v.'"';
}
function bracket($v) {
return '{'.$v.'}';
}
// Convert a decoded JSON object back into a JSON string, but ignore arrays for cradlepoint
function stringify($v) {
$str = "";
switch(gettype($v)) {
case 'array':
for ($i = 0; $i < count($v); $i++)
$str .= ($i == 0 ? '':',').quote($i).':'.stringify($v[$i]);
$str = bracket($str);
break;
case 'object':
$c = '';
foreach ($v as $k=>$v) {
$str .= $c.quote($k).':'.stringify($v);
$c = ',';
}
$str = bracket($str);
break;
case 'boolean':
$str .= ($v ? 'true' : 'false');
break;
case 'integer':
case 'double':
$str .= ''.$v;
break;
case 'string':
$str .= quote($v);
break;
case 'NULL':
$str .= 'null';
break;
default:
break;
}
return $str;
}
echo stringify($jd);
?>