>백엔드 개발 >PHP 튜토리얼 >PHP_php 팁에서 json 데이터 형식을 사용하여 리터럴 객체를 정의하는 방법

PHP_php 팁에서 json 데이터 형식을 사용하여 리터럴 객체를 정의하는 방법

WBOY
WBOY원래의
2016-05-16 20:37:551038검색

PHP는 적어도 현재 버전에서는 PHP가 리터럴을 지원하지 않는다는 것을 모두 알고 있습니다. 예를 들어 JS에서는 다음과 같이 object
를 정의할 수 있습니다.

코드 복사 코드는 다음과 같습니다.

var o = { '이름' : 'qttc' , 'url' : 'www.jb51.net' };
경고(o.name);

Python에서 사전 정의는 다음과 같이 정의할 수도 있습니다.
코드 복사 코드는 다음과 같습니다.

o = { '이름' : 'qttc' , 'url' : 'www.jb51.net' }
o['이름'] 인쇄

하지만 PHP에서는 다음과 같은 객체를 정의합니다.
코드 복사 코드는 다음과 같습니다.

$a = { "이름" : "qttc", "url" : "www.jb51.net" };

오류가 보고됩니다:
코드 복사 코드는 다음과 같습니다.

[root@lee www]# php a.php
PHP 구문 분석 오류: 구문 오류, 4행의 /data0/htdocs/www/a.php에 예상치 못한 '{'가 있습니다

json 형식을 빌려서 따옴표로 묶은 다음 json_decoude를 사용할 수 있습니다.
코드 복사 코드는 다음과 같습니다.

$a = '{ "이름" : "qttc", "url" : "www.jb51.net" }';
$a = json_decode($a);
print_r($a);

실행 결과:
코드 복사 코드는 다음과 같습니다.

[root@lee www]# php a.php
stdClass객체
(
[이름] =>qttc
[URL] =>www.jb51.net
)

PHP는 리터럴이나 익명 함수를 지원하지 않으므로 위에서 정의한 메서드를 사용하여 객체를 정의할 때 객체에 함수를 추가할 수 없습니다.
코드 복사 코드는 다음과 같습니다.

$a = '{ "name" : "qttc", "url" : "www.jb51.net" , "arr":["zhangsan","lisi"] }';
$a = json_decode($a);
print_r($a);

실행 결과:
코드 복사 코드는 다음과 같습니다.

[root@lee www]# php a.php
stdClass객체
(
[이름] =>qttc
[URL] =>www.jb51.net
[arr] => 배열
(
> [1] = & gt; 리시
)

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