나는 Yii 이벤트의 유연성에 깊은 인상을 받았습니다. 저는 Yii를 처음 접했고 Yii 이벤트 핸들러에 매개 변수를 전달하는 방법을 알고 싶습니다.yii에서 이벤트 처리기에 매개 변수를 전달하는 방법은 무엇입니까?
//i have onLogin event defined in the login model
public function onLogin($event)
{
$this->raiseEvent("onLogin", $event);
}
핸들러 클래스에 로그인 핸들러가 정의되어 있습니다. 이 이벤트 핸들러 방법은 매개 변수를 취합니다
function loginHandler($param1)
{
...
}
를하지만 여기, 나는 로그인 이벤트 핸들러에 매개 변수를 전달하는 방법에 관한 혼란 스러워요 :
//i attach login handler like this.
$loginModel->onLogin = array("handlers", "loginHandler");
$e = new CEvent($this);
$loginModel->onLogin($e);
내가 뭔가 잘못하고 있습니까? 이것에 대한 또 다른 접근법이 있습니까? 당신은 당신의 설정 파일에 다음 행을 추가하여 그것을 할 수 onEndRequest onBeginRequest을 사용하려는 경우
이벤트에 대한 답변은 좋지만 매개 변수는 어떻게 전달됩니까? 문제의 방법이 괜찮은 것 같습니다. 하나 더 추가하려면 값을 이벤트로 전달하는 방법이 있습니다 : 이벤트 처리기에서'$ event-> sender'를 사용하면 CEvent 생성자 param이 반환됩니다. –
질문에 대답하지 않습니다. –