函数名称:swoole_timer_tick()
适用版本:Swoole 1.9.0以上版本
函数说明:swoole_timer_tick()函数用于创建一个定时器,可以周期性地触发指定的回调函数。
用法: swoole_timer_tick(int $interval, callable $callback, mixed $param = null): int|false
参数:
- $interval:定时器触发的时间间隔,单位为毫秒。
- $callback:定时器触发时要执行的回调函数,可以是一个匿名函数或者是一个已定义的函数名。
- $param:可选参数,传递给回调函数的参数。
返回值:
- 成功时返回定时器的ID(整数类型),用于后续的定时器管理操作。
- 失败时返回false。
示例:
// 定义回调函数
function myTimerCallback($timerId, $param) {
echo "定时器ID:{$timerId},参数:{$param}\n";
}
// 创建一个定时器,每1秒触发一次回调函数
$timerId = swoole_timer_tick(1000, 'myTimerCallback', 'Hello World');
// 主动退出定时器,停止触发回调函数
swoole_timer_clear($timerId);
以上示例中,我们定义了一个名为myTimerCallback
的回调函数,该函数接收两个参数:定时器ID和传递的参数。我们使用swoole_timer_tick()
函数创建了一个定时器,每隔1秒触发一次回调函数,并传递了参数Hello World
。最后,我们通过swoole_timer_clear()
函数停止了定时器的触发。
注意:在使用Swoole的定时器函数时,需要在Swoole的事件循环中运行,例如在Swoole的Server或Coroutine环境中。