有如下对象$obj:
stdClass Object ( [name] => zhangsan [age] => 25 [sex] => 1 [innerobj] => stdClass Object ( [name] => wangwu [age] => 24 ) )
1.使用 (array) 转化:
print_r((array) $obj);
得:
Array ( [name] => zhangsan [age] => 25 [sex] => 1 [innerobj] => stdClass Object ( [name] => wangwu [age] => 24 ) )(array)只能将一维对象转化为数组;
2.使用自定义函数:
function obj2arr($obj){ $arr = array(); foreach($obj as $k => $v){ if(!is_object($v)){ $arr[$k] = $v; }else{ $arr[$k] = obj2arr($v); } } return $arr; }
print_r(obj2arr($obj));
得:
Array ( [name] => zhangsan [age] => 25 [sex] => 1 [innerobj] => Array ( [name] => wangwu [age] => 24 ) )
3.使用json格式转化:
print_r(json_decode(json_encode($obj),true));得:
Array ( [name] => zhangsan [age] => 25 [sex] => 1 [innerobj] => Array ( [name] => wangwu [age] => 24 ) )