2014-10-02 2 views
0

동적 함수를 호출하고 현재 함수를 참조로 사용하여 함수를 호출해야합니다. PHP 5.4는 달리이 작품 PHP 5.3에서

이 :의 MyFunction이

$value = call_user_func("MyFunction", $value, $row, $this,etc....); // using $this because this call happends inside an object 

입니다

:

function MyFunction($value,&$row,&$column,&$grid,etc...){ 
    ... 
}// myFunction is a standalone function, not inside any object 

는 PHP 5.4에서 내가 참조를 할 것으로 예상 오류 "매개 변수를 얻을 값 주어진". 해당 오류는 call_user_func 행의 $ this 매개 변수를 나타냅니다. 이 보인다 내가 이렇게 할 경우, 작동 패스에 의해 값 때문에 나는 직접 호출에 고려 $이 지정하는 경우 :

$that = &$this; 
$value = call_user_func("MyFunction", $value, $row, $that,etc....); 

을 그리고 다른 모든 매개 변수를 사용하여이 작업을 수행해야 현재 개체와 관련된

질문 : 다른 어떤 더 우아한 방법이 있습니까? 내가 놓친 게 있니?

답변

2

먼저 매개 변수를 참조로 받아 들일 필요가 없습니다. 정말 아무것도 추가하지 않습니다 참조를 전달

function MyFunction($value, $row, $column, $grid, ..) .. 

개체 값 어쨌든 자연에 의해 참조 및/또는 당신이하지 생각하지 않을 수 있습니다 귀하의 기능을 변경합니다.

+0

오른쪽! 나는 그것에 대해 잊었다 :) – Catalin

관련 문제