2011-10-07 4 views
1

jQuery 플러그인에서 특성이있는 익명 객체를 전달할 수 있습니다.jQuery에서와 같이 PHP에서 객체 속성을 설정하십시오.

$('selecter').function({property: 'value', property: 'value'}) 

플러그인 코드 jquery에는 extend라는 함수가 있습니다. 이게 무엇입니까 2 매개 변수로 개체를 걸릴 다음 개체 2 속성에서 개체 1의 속성을 덮어 씁니다.

배열을 사용하지 않고이 작업을 수행 할 수있는 방법이 있습니까? 당신의 객체 stdClass 단지 인스턴스가있는 경우

+1

왜 돈 ' 배열을 사용하고 싶습니까? 자바 스크립트의 객체는 PHP의 배열과 매우 흡사합니다. –

+1

array_merge 또는 array_merge_recursive를 사용하는 배열을 사용하지 않는 이유는 무엇입니까? PHP의 연관 배열은 JavaScript 객체와 거의 같습니다. – Daff

+0

배열을 사용하지 않는 편이 좋다. 왜냐하면 장기 적으로 더 많은 타입의 연관 배열을 사용해야하기 때문이다. – Yamiko

답변

1

- 당신은 그냥

$result = (object)array_merge((array)$a, (array)$b); 

할 수 그렇지 않으면 그냥 루프에서 하나 개의 객체를 통과하고 다른 객체에 속성을 할당합니다. PHP 5.4에서

foreach (get_object_vars($b) as $key => $val) { 
    $a->{$key} = $val; 
} 
0

당신이 배열에 대한 짧은 구문을 사용할 수 있습니다 : @zerkms는 제안 생성자에서 그것을 "병합"다음

$obj = new obj(['property' => 'value']); 

과)

관련 문제