Funkce register_tick_function
Funkce register_tick_function umožňuje registrovat funkci,
která bude volána na každém ticku provedení skriptu. Prvním parametrem
přijímá název funkce nebo anonymní funkci, následující parametry - argumenty
pro předávanou funkci. Pro fungování funkce je nutné zapnout ticky pomocí
declare(ticks=N), kde N - počet ticků mezi voláními.
Syntaxe
register_tick_function(callable $function, mixed ...$args);
Příklad
Jednoduchý příklad registrace funkce pro provedení na každém ticku:
<?php
declare(ticks=1);
function tick_handler() {
echo "Tick executed\n";
}
register_tick_function('tick_handler');
$a = 1;
$b = 2;
$c = $a + $b;
?>
Výsledek provedení kódu:
Tick executed
Tick executed
Tick executed
Tick executed
Příklad
Použití anonymní funkce s parametry:
<?php
declare(ticks=2);
register_tick_function(function($msg) {
echo $msg . "\n";
}, "Tick!");
for ($i = 0; $i < 5; $i++) {
// Nějaký kód
}
?>
Výsledek provedení kódu:
Tick!
Tick!
Příklad
Zrušení registrace funkce pomocí unregister_tick_function:
<?php
declare(ticks=1);
function tick_log() {
echo date('H:i:s') . "\n";
}
register_tick_function('tick_log');
// První část kódu
$a = 10;
$b = 20;
unregister_tick_function('tick_log');
// Druhá část kódu
$c = $a + $b;
?>
Výsledek provedení kódu:
14:25:03
14:25:03
Viz také
-
funkci
unregister_tick_function,
která zruší registraci funkce pro provedení na tickách