Запись на курсы по HTML, CSS, JavaScript, PHP, Python, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
387 of 410 menu
Бесплатный тренинг по JavaScript: работа с Drag-and-Drop. Начало 2 октября. Жми для записи!

Функция register_tick_function

Функция register_tick_function позволяет зарегистрировать функцию, которая будет вызываться на каждом тике выполнения скрипта. Первым параметром принимает имя функции или анонимную функцию, последующие параметры - аргументы для передаваемой функции. Для работы функции необходимо включить тики с помощью declare(ticks=N), где N - количество тиков между вызовами.

Синтаксис

register_tick_function(callable $function, mixed ...$args);

Пример

Простой пример регистрации функции для выполнения на каждом тике:

<?php declare(ticks=1); function tick_handler() { echo "Tick executed\n"; } register_tick_function('tick_handler'); $a = 1; $b = 2; $c = $a + $b; ?>

Результат выполнения кода:

Tick executed Tick executed Tick executed Tick executed

Пример

Использование анонимной функции с параметрами:

<?php declare(ticks=2); register_tick_function(function($msg) { echo $msg . "\n"; }, "Tick!"); for ($i = 0; $i < 5; $i++) { // Некоторый код } ?>

Результат выполнения кода:

Tick! Tick!

Пример

Отмена регистрации функции с помощью unregister_tick_function:

<?php declare(ticks=1); function tick_log() { echo date('H:i:s') . "\n"; } register_tick_function('tick_log'); // Первая часть кода $a = 10; $b = 20; unregister_tick_function('tick_log'); // Вторая часть кода $c = $a + $b; ?>

Результат выполнения кода:

14:25:03 14:25:03

Смотрите также

  • функцию unregister_tick_function,
    которая отменяет регистрацию функции для выполнения на тиках
byenru