Funktio register_tick_function

Funktio register_tick_function mahdollistaa funktion rekisteröinnin, jota kutsutaan jokaisella skriptin suorituksen tick-ajantasauksella. Ensimmäisenä parametrina se vastaanottaa funktion nimen tai anonyymin funktion, seuraavat parametrit ovat argumentteja annetulle funktiolle. Toimiakseen funktio vaatii tick-ajantasausten käyttöönoton declare(ticks=N) -komennolla, missä N on tick-ajantasausten määrä kutsumisten välillä.

Syntaksi

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

Esimerkki

Yksinkertainen esimerkki funktion rekisteröinnistä suoritettavaksi jokaisella tick-ajantasauksella:

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

Koodin suorituksen tulos:

phpTick suoritettu
Tick suoritettu
Tick suoritettu
Tick suoritettu

Esimerkki

Anonyymin funktion käyttö parametreilla:

php<?php
  declare(ticks=2);
  
  register_tick_function(function($msg) {
    echo $msg . "\n";
  }, "Tick!");
  
  for ($i = 0; $i < 5; $i++) {
    // Jokin koodi
  }
?>

Koodin suorituksen tulos:

phpTick!
Tick!

Esimerkki

Funktion rekisteröinnin peruutus unregister_tick_function -funktiolla:

php<?php
  declare(ticks=1);
  
  function tick_log() {
    echo date('H:i:s') . "\n";
  }
  
  register_tick_function('tick_log');
  
  // Ensimmäinen osa koodista
  $a = 10;
  $b = 20;
  
  unregister_tick_function('tick_log');
  
  // Toinen osa koodista
  $c = $a + $b;
?>

Koodin suorituksen tulos:

php14:25:03
14:25:03

Katso myös