Javascript 에서는
var a = { x: 1, y: 2 } 라고 정의하면
a.x 또는 a['x'] 둘 다 사용가능하지만, PHP 에서는 당연히 안된다.
PHP 에서 배열로 정의하고 객체처럼 쓰고 싶을때는
Standard PHP Library (SPL) 의 ArrayObject 를 사용하면 가능하다.
(PHP 5 이상에서 지원함)
...제목에는 '객체처럼 쓰기'라고 했지만, '객체로 변환해서 쓰기'가 맞긴하다.
var a = { x: 1, y: 2 } 라고 정의하면
a.x 또는 a['x'] 둘 다 사용가능하지만, PHP 에서는 당연히 안된다.
PHP 에서 배열로 정의하고 객체처럼 쓰고 싶을때는
Standard PHP Library (SPL) 의 ArrayObject 를 사용하면 가능하다.
(PHP 5 이상에서 지원함)
$arr = array('a' => 1, 'b' => 2);
$arrObj = new ArrayObject($arr);
$arrObj->setFlags(ArrayObject::ARRAY_AS_PROPS);
echo $arrObj->a; // 1
위에서 세번째줄이 배열의 key를 객체의 property로 사용가능하게 해주는 역할을 한다....제목에는 '객체처럼 쓰기'라고 했지만, '객체로 변환해서 쓰기'가 맞긴하다.

파이어준 2010/02/12 17:04 # M/D Reply
호호~ 요런게 있군요.
$arr = array('a' => 1, 'b' => 2);
$arr = json_decode(json_encode($arr));
$arr->a ;// 1
저는 요따위로 작성해서 썼더라능(;)
AprilBriz 2010/02/14 00:43 # M/D
오호 그 방법도 좋은데요~ 트릭스럽 ㅋ