php8.5
Home/ Manual/ ev / evperiodic/ EvPeriodic::__construct

EvPeriodic::__construct

PHP function Edit on GitHub ✎

(PECL ev >= 0.2.0)

Constructs EvPeriodic watcher object

Description

EvPeriodic::__construct(float $offset, string $interval, callable $reschedule_cb, callable $callback, mixed $data = null, int $priority = 0)

Constructs EvPeriodic watcher object and starts it automatically. EvPeriodic::createStopped method creates stopped periodic watcher.

Parameters

offset

See Periodic watcher operation modes

interval

See Periodic watcher operation modes

reschedule_cb

Reschedule callback. You can pass null. See Periodic watcher operation modes

callback

See Watcher callbacks.

data

Custom data associated with the watcher.

priority

Watcher priority

Examples

Periodic timer. Use reschedule callback

php
<?php
// Tick each 10.5 seconds

function reschedule_cb ($watcher, $now) {
 return $now + (10.5 - fmod($now, 10.5));
}

$w = new EvPeriodic(0., 0., "reschedule_cb", function ($w, $revents) {
 echo time(), PHP_EOL;
});
Ev::run();
?>

Periodic timer. Tick every 10.5 seconds starting at now

php
<?php
// Tick every 10.5 seconds starting at now
$w = new EvPeriodic(fmod(Ev::now(), 10.5), 10.5, NULL, function ($w, $revents) {
 echo time(), PHP_EOL;
});
Ev::run();
?>

Hourly watcher

php
<?php
$hourly = EvPeriodic(0, 3600, NULL, function () {
 echo "once per hour\n";
});
?>

See Also

Source: reference/ev/evperiodic/construct.xml · from the official PHP manual (php/doc-en)