2016-06-30 3 views
-1

PHP에서 JSON 라이브러리를 사용하여 이전에 보지 못했던 구문을 가진 요소에 액세스 할 수있는 것으로 나타났습니다.

$jsonObject->{'myvar'}; // return the value of myvar on the jsonobject 

어떻게 작동합니까?

+2

내가 아는 한 모든 단일 'stdclass object' 속성 또는 더 간단히'object' 속성과 함께 작동합니다. 일반적으로, 변수 이름에 공백이있을 때와 같은 문법을 사용하려고합니다.'$ object -> { "hello world"};' – briosheje

+1

당신이 찾고있는 정보는 무엇입니까? 구현 되었습니까? " 그것을 움직이는 코드를 이해하고 싶습니까? 아니면 특정 기능에 대한 문서를 원하십니까? – zzzzBov

+1

종종 json 인덱스에는 공백이있을 수 있으므로'{} '를 사용하면 데이터에 액세스 할 수 있습니다. 그렇지 않으면'$ object-> my index'가 작동하지 않지만'$ object -> {'my index '}'가 작동합니다 – Matt

답변

4

JSON 라이브러리에 내재되어 있다고 생각하지 않습니다.

전화를 걸 변수의 이름을 확인하는 또 다른 방법 일뿐입니다. 예를 들어, 어떤 변수를 호출해야 하는지를 동적으로 결정할 때 유용합니다. 이는 마술 방법에서 많이 사용됩니다.

$var->{"var_name"}$var->var_name과 같습니다.

당신은뿐만 아니라 이와 같은 작업을 수행 할 수 있습니다 :

$key = "key_name"; 

var_dump($object->{$key}); 

할 수 있습니다 같은 점 또는 쉼표 같은 무효 문자로도 액세스 키.

$key = "key.name.nice"; 

var_dump($object->{$key}); 
+1

+1하지만 공백과 같은 "잘못된"문자가있는 속성에 액세스해야 할 때 특히 유용하다는 점을 지적하는 것이 중요합니다. 그냥 말해. – briosheje

+0

확실히. 나는 그것을 추가 할 것이다, 고마워. – GiamPy