Funksjonen register_tick_function
Funksjonen register_tick_function lar deg registrere en funksjon
som vil bli kalt på hver tick under skriptkjøring. Den tar funksjonsnavn
eller en anonym funksjon som første parameter, og påfølgende parametere - argumenter
for den overførte funksjonen. For at funksjonen skal virke, må ticks være slått på ved hjelp av
declare(ticks=N), hvor N er antall ticks mellom kallene.
Syntaks
register_tick_function(callable $function, mixed ...$args);
Eksempel
Et enkelt eksempel på registrering av en funksjon for kjøring på hver 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 kjøring av koden:
Tick executed
Tick executed
Tick executed
Tick executed
Eksempel
Bruk av anonym funksjon med parametere:
<?php
declare(ticks=2);
register_tick_function(function($msg) {
echo $msg . "\n";
}, "Tick!");
for ($i = 0; $i < 5; $i++) {
// Noe kode
}
?>
Resultat av kjøring av koden:
Tick!
Tick!
Eksempel
Avregistrering av funksjon med unregister_tick_function:
<?php
declare(ticks=1);
function tick_log() {
echo date('H:i:s') . "\n";
}
register_tick_function('tick_log');
// Første del av koden
$a = 10;
$b = 20;
unregister_tick_function('tick_log');
// Andre del av koden
$c = $a + $b;
?>
Resultat av kjøring av koden:
14:25:03
14:25:03
Se også
-
funksjonen
unregister_tick_function,
som avregistrerer en funksjon for kjøring på ticks