라이브러리
[PHP] EventListener::setCallback - setCallback 목적
EventListener::setCallback
EventListener::setCallback은 PHP의 EventListener 인터페이스에 속하는 메서드입니다. 이 메서드는 이벤트 리스너에 콜백 함수를 설정하는 역할을 합니다.
EventListener 인터페이스는 PHP 8.0 버전부터 사용할 수 있으며, 이벤트 처리를 위한 표준화된 인터페이스를 제공합니다.
# 사용 방법
EventListener::setCallback 메서드는 이벤트 리스너에 콜백 함수를 설정하는 데 사용됩니다. 콜백 함수는 이벤트가 발생할 때 호출되는 함수입니다.
#hostingforum.kr
php
use EventListener;
$listener = new EventListener();
$listener->setCallback('eventName', function () {
echo '이벤트가 발생했습니다.';
});
# 예제
EventListener::setCallback 메서드를 사용하여 이벤트 리스너를 설정하는 예제를 살펴보겠습니다.
#hostingforum.kr
php
use EventListener;
class MyEventListener implements EventListener
{
public function onEvent(string $eventName, array $data): void
{
echo "이벤트 이름: $eventName
";
echo "이벤트 데이터: " . json_encode($data) . "
";
}
public function setCallback(string $eventName, callable $callback): void
{
$this->callbacks[$eventName] = $callback;
}
public function trigger(string $eventName, array $data): void
{
if (isset($this->callbacks[$eventName])) {
($this->callbacks[$eventName])($data);
}
}
private $callbacks = [];
}
$listener = new MyEventListener();
$listener->setCallback('myEvent', function (array $data) {
echo "콜백 함수가 호출되었습니다.
";
echo "이벤트 데이터: " . json_encode($data) . "
";
});
$listener->trigger('myEvent', ['name' => 'John', 'age' => 30]);
# 결과
이 예제에서는 `MyEventListener` 클래스를 정의하여 `EventListener` 인터페이스를 구현합니다. `setCallback` 메서드를 사용하여 이벤트 리스너에 콜백 함수를 설정하고, `trigger` 메서드를 사용하여 이벤트를 발생시킵니다.
결과적으로, 콜백 함수가 호출되고 이벤트 데이터가 출력됩니다.
#hostingforum.kr
콜백 함수가 호출되었습니다.
이벤트 데이터: {"name":"John","age":30}
EventListener::setCallback 메서드는 이벤트 리스너에 콜백 함수를 설정하는 데 사용됩니다. 이 메서드는 이벤트 처리를 위한 표준화된 인터페이스를 제공하며, 이벤트 리스너를 설정하고 이벤트를 발생시키는 데 사용할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.