>백엔드 개발 >PHP 튜토리얼 > json_encode 后转向数组 为什么根据键名取不到值呢

json_encode 后转向数组 为什么根据键名取不到值呢

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB원래의
2016-06-13 13:10:041112검색

json_encode 后转为数组 为什么根据键名取不到值呢?
问个小白的问题。。

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->$arr = array(34=>1,2=>3);
$str = json_encode($arr);
echo $str;
$arr2 = (array)json_decode($str);
echo '<pre class="brush:php;toolbar:false">';
print_r($arr2);
echo '
'; var_dump($arr2['2']);

为什么索引数组转化的JSON encode 过来后 按照键值取取不到值呢?
我想取到$arr2['2']的值 要怎么取呢?


------解决方案--------------------
$arr2 = json_decode($str, 1);

------解决方案--------------------
默认转成对象。
------解决方案--------------------
如果想要强制生成PHP关联数组,json_decode()需要加一个参数true:
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.