라이브러리
[PHP] Event::del - 이벤트를 보류되지 않게 만듭니다.
PHP 에서 Event::del
PHP 에서 Event::del은 이벤트를 삭제하는 메서드입니다. 이 메서드는 이벤트를 등록한 후, 더이상 필요하지 않은 경우에 사용됩니다.
# 예제
#hostingforum.kr
php
// Event.php (이벤트 클래스)
class Event {
private $name;
private $listeners;
public function __construct($name) {
$this->name = $name;
$this->listeners = array();
}
public function on($callback) {
$this->listeners[] = $callback;
}
public function del($callback) {
$index = array_search($callback, $this->listeners);
if ($index !== false) {
unset($this->listeners[$index]);
}
}
public function trigger($args = array()) {
foreach ($this->listeners as $callback) {
$callback($args);
}
}
}
// 사용 예제
$event = new Event('test');
// 이벤트 리스너 등록
$callback1 = function($args) {
echo "Callback 1: " . $args[0] . "
";
};
$callback2 = function($args) {
echo "Callback 2: " . $args[0] . "
";
};
$event->on($callback1);
$event->on($callback2);
// 이벤트 트리거
$event->trigger(array('Hello, World!'));
// 이벤트 리스너 삭제
$event->del($callback1);
// 이벤트 트리거 (Callback 1이 삭제된 후)
$event->trigger(array('Hello, World!'));
이 예제에서는 `Event` 클래스를 정의하고, 이벤트를 등록하고 삭제하는 방법을 보여줍니다. `on` 메서드를 사용하여 이벤트 리스너를 등록하고, `del` 메서드를 사용하여 이벤트 리스너를 삭제합니다. `trigger` 메서드를 사용하여 이벤트를 트리거합니다.
Event::del 사용 방법
1. 이벤트를 등록한 후, 더이상 필요하지 않은 경우에 사용합니다.
2. 이벤트 리스너를 삭제하고자 하는 메서드의 이름을 파라미터로 전달합니다.
3. 이벤트 리스너가 삭제되면, 더이상 이벤트가 트리거되지 않습니다.
참고
* 이벤트를 등록하고 삭제하는 메서드는 `on`과 `del`입니다.
* 이벤트를 트리거하는 메서드는 `trigger`입니다.
* 이벤트 리스너는 함수 또는 메서드의 이름을 전달하여 등록할 수 있습니다.
* 이벤트 리스너는 삭제하고자 하는 메서드의 이름을 전달하여 삭제할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.