用json传过来的数组并不是标准的array,所以需要用这个函数进行转换。
function object_array($array) { if(is_object($array)) { $array = (array)$array; } if(is_array($array)) { foreach($array as $key=>$value) { $array[$key] = object_array($value); } } return $array; }
************************************************************************************
实际上json_decode()函数中已经给出了现成的转换方式:
说明 ¶
mixed json_decode ( string
$json
[, bool $assoc
=
false [, int $depth
=
512 [, int $options
=
0 ]]] )接受一个 JSON 格式的字符串并且把它转换为 PHP 变量
参数 ¶
Example #1 json_decode() 的例子
<?php
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_dump(json_decode($json));
var_dump(json_decode($json, true));
?>
以上例程会输出:
object(stdClass)#1 (5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) } array(5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) }