$arr = array();
$arr[0] = "2a123";
$arr[1] = "2123";
$arr["other_option"] = "2123";
var_dump($arr);
$arr = json_encode($arr);
$arr = (array)json_decode($arr);
var_dump($arr);
var_dump( $arr[1]);
var_dump( $arr["1"]);
2最后一个var_dump的输出是NULL NULL,如果我们删除第4行$ arr [“other_option”] =“2123”;它会正确输出,但我不明白为什么!
答案 0 :(得分:2)
而不是类型转换为数组,在json_encode
true
当为TRUE时,返回的对象将被转换为关联数组。
$arr = array();
$arr[0] = "2a123";
$arr[1] = "2123";
$arr["other_option"] = "2123";
$arr = json_encode($arr);
$arr = json_decode($arr,true);
var_dump( $arr['other_option']); // return 2123