1
줌라! 플러그인, 나는 정말 재미있는 것을 보았습니다. 이벤트 중 하나에 반환 값이 없지만 함수 내부에서 변수를 호출합니다. 사전 지식에 따르면 변수가 함수 내부에 전역 변수 인 경우에만 작동해야하지만 운영자는 함수 외부에서 변수를 호출 할 수 있습니다.함수에서 전역 변수가 아닌 변수를 호출 하시겠습니까?
편집 : 방금 함수 내부에서 액세스 한 변수가 매개 변수 중 하나 일 필요가 있음을 발견했습니다. 이 func_get_params() 또는 call_user_func() 수 있을까요?
호출 코드 :
$instance = JDispatcher::getInstance();
$instance->trigger(onJoomCalledEvent, array(&$link, $other_params));
플러그인 (조각) : (줌라!)
class plgMyPlugin extends JPlugin{
onJoomCalledEvent($link, $other_params){
$link = "Some Value Here";
return false;
}
}
이 함수는 false를 반환 아직 어떻게 든 응용 프로그램 $ 링크의 값을 추출 할 수 있습니다. 어떻게 이뤄지나요? 이 pass by reference의보다
class plgMyPlugin extends JPlugin{
onJoomCalledEvent(&$link, $other_params){
$link = "Some Value Here";
return false;
}
}
:
문제의 (전체) 코드에 대한 링크를 게시 할 수 있습니까? – drew010
이 작업을 수행하는 실제 코드는 Joomla의 일부이며 특히 JDisplatcher 클래스입니다. 위에서 추가 한 "호출 코드"는 플러그인을 호출하는 구성 요소의 코드입니다. – alecwhardy
감사합니다. – drew010