2012-01-28 3 views
2

다음과 같은 메소드를 호출 할 수 있다고 가정 해 봅시다 : core::get(). 이 방법을 참조하는 가장 좋은 방법은 무엇입니까? get이라는 함수를 호출 할 때마다 core::get()을 호출하고 동일한 매개 변수를 전달해야합니다.PHP에서 함수를 참조하는 가장 좋은 방법은 무엇입니까?

나는이 있었다 가지고 올 수있는 모든 :

function get(){ 
    call_user_func_array('core::get', func_get_args()); 
} 

하지만 내가 자바 스크립트에서이 문제를 해결하려는 방식과 비교하면 매우 우아한 보이지 않는 :

var get = core.get; 

내가 PHP에서 뭔가를 놓친 것 같아요, 그래서 아무도 이것에 대한 더 나은 해결책을 가지고 있습니까? 경우에

$get = function() { 
    call_user_func_array('core::get', func_get_args()); 
}; 

//usage 

$get('arg1','arg2'); 

주 당신은 당신이 할 수있는 간단한 기능을 가지고 :

+0

PHP의 어떤 버전을하다 사용 하시겠습니까? – Arjan

+0

5.3.8을 사용 중입니다. –

+1

그리고 왜'$ get = core :: get; $ get();'? 그것은 나를 위해 작동합니다. –

답변

5

이 이미 좋아 보인다 솔루션과 거의 동일하다

function foo() {} 
$var = 'foo'; 
$var(); //> same as calling foo(); 
+0

PHP에서 함수를 선언하고 함수를 변수로 전달하는 것과 다른 점은 무엇입니까? –

+0

anony 함수가 무엇을 의미하는지에 대한 대답은 다음과 같습니다. http://php.net/manual/en/functions.anonymous.php "함수 선언"을 의미하는 것을 완벽하게 이해합니다. – dynamic

+0

저는 어떤 결론을 내렸는지 압니다 입니다. 그러나 이것이 왜 내 솔루션보다 나은 해결책입니까? –

관련 문제