2010-02-05 4 views
4

나는 C# 세계에서 왔고 약간의 PHP 코딩을 시작 했으므로 PHP에서 이벤트를 사용할 수 있는지 또는 향후 릴리스에서이 기능을 포함 할 예정인지 궁금합니다. this과 다른 시뮬레이션 방법이 있다면 매우 감사하겠습니다.PHP 관련 이벤트. 가능한가?

+0

가변 변수? – Earlz

+0

ey 미안하지만, 내가 ur 코멘트를 이해하지 못했습니다 ... 나는 실수를했을 경우 사과를 요구하기 때문에 저는 영어로 말하는 사람이 아닙니다 –

+0

함수 포인터를 사용하여 원 이벤트 처리를 구현할 수 있습니다. 그러나 실망하게됩니다. 당신은 C# 델리게이트의 적합성과 완성도를 기대합니다. –

답변

4

PHP에서 C#과 같은 이벤트는 발생하지 않지만 Observer Pattern을 구현하여 알림을 첨부 할 대리자를 첨부 할 수 있습니다.

2

Prado PHP Framework은 특히 C# 및 아마도 ASP.NET의 영역에서 왔기 때문에 사용자에게 어필 할 수있는 이벤트 기반 프레임 워크입니다.

Quick Start을 살펴보십시오. 특히 Control Reference의 코드를 살펴보십시오. 당신이 찾고있는 것과 비슷한 것인지 살펴보고 볼 수있는 많은 코드 샘플이 있습니다.

0

당신은 PHP에서 이벤트 처리 클래스 같은 것을 만들 수 있습니다

class Event { 
    protected $_eventCallbacks = array(); 
    function addEventCallback($callback) { 
     $this->_eventCallbacks[$callback] = $callback; 
    } 
    function removeEventCallback($callback){ 
     if(isset($this->_eventCallbacks[$callback])){ 
      unset ($this->_eventCallbacks[$callback]); 
     } 
    } 
    function cleanEventCallback(){ 
     foreach ($this->_eventCallbacks as $callback) { 
      unset ($callback); 
     } 
    } 
    function fireEvent() { 
     foreach ($this->_eventCallbacks as $callback) { 
      call_user_func($callback); 
     } 
    } 
} 

이 코드는 여기 http://setahost.com/php-events-singletone-and-factory-pattern-application/ 에서 찍은이 클래스를 사용하여 모듈 및 하위 모듈 응용 프로그램의 좋은 예도 있습니다.