函式名: Event::__construct()
適用版本: PHP 5 >= 5.4.0
用法: Event::__construct() 是Event類的建構函式。它用於建立一個新的事件物件。
示例:
// 建立一個新的事件物件,並將回撥函式附加到事件上
$base = new EventBase();
$event = new Event($base, $fd, Event::READ | Event::PERSIST, function ($fd, $events, $arg) {
// 事件觸發時執行的回撥函式
echo "Event triggered!" . PHP_EOL;
}, [$fd, $arg]);
// 將事件新增到事件迴圈中
$event->add();
// 進入事件迴圈
$base->loop();
在上面的示例中,我們首先建立了一個事件基礎物件 $base
。然後,我們使用建構函式 Event::__construct()
建立一個新的事件物件 $event
,並將其與一個檔案描述符,事件型別和回撥函式繫結在一起。在這個例子中,事件型別設定為 Event::READ | Event::PERSIST
,表示當檔案描述符可以讀取時觸發事件,並且事件持久存在,即每次事件觸發後仍然保持在事件迴圈中。
回撥函式接收三個引數:檔案描述符 $fd
,觸發的事件型別 $events
,以及傳遞給事件的自定義引數 $arg
。在這個例子中,回撥函式簡單地列印一條訊息。
接下來,我們使用 $event->add()
方法將事件新增到事件迴圈中。最後,我們使用 $base->loop()
方法進入事件迴圈,開始監聽事件的發生。事件迴圈將一直執行,直到沒有更多的事件或者手動停止迴圈。
請注意,為了使用 Event::__construct()
建構函式,需要安裝並啟用 Event 擴充套件。