Funkcia register_tick_function
Funkcia register_tick_function umožňuje registrovať funkciu,
ktorá bude volaná na každom ticku vykonávania skriptu. Prvým parametrom
prijíma názov funkcie alebo anonymnú funkciu, následné parametre - argumenty
pre odovzdávanú funkciu. Pre prácu funkcie je potrebné zapnúť ticky pomocou
declare(ticks=N), kde N - počet tickov medzi volaniami.
Syntax
register_tick_function(callable $function, mixed ...$args);
Príklad
Jednoduchý príklad registrácie funkcie pre vykonanie na každom 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ýsledok vykonania kódu:
Tick executed
Tick executed
Tick executed
Tick executed
Príklad
Použitie anonymnej funkcie s parametrami:
<?php
declare(ticks=2);
register_tick_function(function($msg) {
echo $msg . "\n";
}, "Tick!");
for ($i = 0; $i < 5; $i++) {
// Nejaky kod
}
?>
Výsledok vykonania kódu:
Tick!
Tick!
Príklad
Zrušenie registrácie funkcie pomocou unregister_tick_function:
<?php
declare(ticks=1);
function tick_log() {
echo date('H:i:s') . "\n";
}
register_tick_function('tick_log');
// Prvá časť kódu
$a = 10;
$b = 20;
unregister_tick_function('tick_log');
// Druhá časť kódu
$c = $a + $b;
?>
Výsledok vykonania kódu:
14:25:03
14:25:03
Pozri tiež
-
funkciu
unregister_tick_function,
ktorá ruší registráciu funkcie pre vykonanie na tickoch