2009-11-23 4 views
2

에서 나는 내가 위해서 var_dump 때, 내가 할, 속성 이름에 세미콜론을 포함하는 객체를 가지고 :PHP 객체는 세미콜론있다 (또는 다른 이상한 문자) 변수 이름

object(Sales) { 

    [thisisa:propertyname] => 'some value' 

} 

그래서, 어떻게 할 속성에 액세스합니까? $ object-> thisisa : propertyname이 오류를 발생시킵니다. 나는 얼마 전에 당신이 thisisa 포장 할 수 어딘가에 읽어. | (I 해봤 {[(일부 문자에 propertyName 형식을)하지만 난 어떤 기억이 안나요 또한

, 그것을 사용하는 것 같습니다 :

$var = "thisisa:propertyname"; 
$object->$$var; 

중 하나가 작동하지 않습니다.

도와주세요!

마이크

+0

대단위 - :는 콜론입니다. ; 세미콜론입니다. – dnagirl

+0

$ to far ... :) – hegemon

답변

8

을 시도해보십시오

echo $object->{'thisisa:propertyname'}; 

또한 variable member variables의 경우 하나의 $이면 충분합니다. 따라서

$attr = "thisisa:propertyname"; 
echo $object->$attr; 
+2

$ object -> { 'thisisa : propertyname'}'또는'$ object -> { "thisisa : propertyname"}'따옴표를 잊지 마십시오. – Gumbo

+1

감사합니다 - 한 번만 내 예제 코드를 실행하지 않았다 :) – gnud