Funktionen register_tick_function
Funktionen register_tick_function låter dig registrera en funktion
som kommer att anropas på varje tick under skriptets exekvering. Den tar funktionens namn eller en anonym funktion som första parameter,
och efterföljande parametrar är argument
för den överförda funktionen. För att funktionen ska fungera måste ticks aktiveras med
declare(ticks=N), där N är antalet tick mellan anrop.
Syntax
register_tick_function(callable $function, mixed ...$args);
Exempel
Ett enkelt exempel på registrering av en funktion för exekvering på varje tick:
<?php
declare(ticks=1);
function tick_handler() {
echo "Tick executed\n";
}
register_tick_function('tick_handler');
$a = 1;
$b = 2;
$c = $a + $b;
?>
Resultat av kodkörning:
Tick executed
Tick executed
Tick executed
Tick executed
Exempel
Användning av en anonym funktion med parametrar:
<?php
declare(ticks=2);
register_tick_function(function($msg) {
echo $msg . "\n";
}, "Tick!");
for ($i = 0; $i < 5; $i++) {
// En del kod
}
?>
Resultat av kodkörning:
Tick!
Tick!
Exempel
Avregistrering av en funktion med unregister_tick_function:
<?php
declare(ticks=1);
function tick_log() {
echo date('H:i:s') . "\n";
}
register_tick_function('tick_log');
// Första delen av koden
$a = 10;
$b = 20;
unregister_tick_function('tick_log');
// Andra delen av koden
$c = $a + $b;
?>
Resultat av kodkörning:
14:25:03
14:25:03
Se även
-
funktionen
unregister_tick_function,
som avregistrerar en funktion för exekvering på tick