php数组与json的转化

<?php
$s='{"webname":"homehf","url":"www.homehf.com","qq":"744348666"}';
$web=json_decode($s); //将字符转成JSON
$arr=array();
foreach($web as $k=>$w) $arr[$k]=$w;
print_r($arr);
?>


上面的代码中,已经将一个JSON对象转成了一个数组,可是如果是嵌套的JSON,上面的代码就无法实现了,而下面的代码正好能解决该问题

<?php
$s='{"webname":"homehf","url":"www.homehf.com","contact":{"qq":"744348666","mail":"[email protected]","xx":"xxxxxxx"}}';
$web=json_decode($s);
$arr=json_to_array($web);
print_r($arr);

function json_to_array($web){
$arr=array();
foreach($web as $k=>$w){
    if(is_object($w)) $arr[$k]=json_to_array($w); //判断类型是不是object
    else $arr[$k]=$w;
}
return $arr;
}
?>


你可能感兴趣的:(json转换php数组)