>  기사  >  백엔드 개발  >  PHP 파싱 JSON 오류

PHP 파싱 JSON 오류

WBOY
WBOY원래의
2016-08-04 09:19:091178검색

<code><?php
$json = '{"detail":[{"name":24,"country":China,"location":{"city":chengdu},"code":2000}';
$obj = json_decode($json,true);
echo $obj->detail[0]->name;
echo $obj->detail[0]->location->city;
?>
</code>

코드는 위와 같은데 어떻게 수정해야 하나요?

답글 내용:

<code><?php
$json = '{"detail":[{"name":24,"country":China,"location":{"city":chengdu},"code":2000}';
$obj = json_decode($json,true);
echo $obj->detail[0]->name;
echo $obj->detail[0]->location->city;
?>
</code>

코드는 위와 같은데 어떻게 수정해야 하나요?

JSON 형식이 올바르지 않습니다. json 문자열이 작성된 후 http://www.bejson.com/에 복사하여 확인할 수 있습니다

나중에 $obj = json_decode($json,true);직접echo $obj[0]['name']할 수 있습니다. json_decode($json, true)을 사용한 후에는 객체가 아닌 배열로 변환됩니다. 배열 조작 가능

$obj = json_decode($json,true); 이렇게 하면 배열입니다. 이를 검색하기 위해 객체 메서드를 사용하는 것은 확실히 잘못된 것입니다. 이런 식으로 객체입니다

json 데이터를 수동으로 생성하지 마세요. json json_encode()를 생성하려면 PHP 함수를 사용해야 합니다. json을 확인해 보니 전혀 표준 json 데이터가 아닙니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.