json_decode
(PHP 5 >= 5.2.0, PECL json >= 1.2.0)
json_decode — JSON 문자열 디코드
설명
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) }
Example #2 또다른 예제
<?php
$json = '{"foo-bar": 12345}';
$obj = json_decode($json);
print $obj->{'foo-bar'}; // 12345
?>
Example #3 json_decode()를 사용하는 일반적인 실수
<?php
// 다음 문자열은 유효한 자바스크립트이지만, JSON에서는 유효하지 않습니다
// 이름과 값은 겹따옴표로 감싸야합니다
// 홑따옴표는 유효하지 않습니다
$bad_json = "{ 'bar': 'baz' }";
json_decode($bad_json); // null
// 이름은 겹따옴표로 감싸야합니다
$bad_json = '{ bar: "baz" }';
json_decode($bad_json); // null
// 따라붙는 쉼표를 허용하지 않습니다
$bad_json = '{ bar: "baz", }';
json_decode($bad_json); // null
?>
주의
Note: JSON 규격은 자바스크립트가 아니고, 자바스크립트의 하위 규격입니다.
Caution
이 함수는 JSON 인코드 데이터가 127 원소보다 깊으면 false를 반환합니다.
변경점
버전 | 설명 |
---|---|
5.2.3 | 중첩 제한이 20에서 128로 증가 |
출처 : http://www.lug.or.kr/docs/PHP/function.json-decode.html
'IT > PHP' 카테고리의 다른 글
mongoDB에 insert하기 (php) (0) | 2014.08.12 |
---|---|
Ubuntu에서 phpinfo.php 안뜰때 (0) | 2014.08.11 |
CURL 사용법 (0) | 2014.08.05 |
php 날짜, 시간 관련 함수 (0) | 2014.07.30 |
include와 require (0) | 2014.07.30 |