Funksie register_tick_function

Die funksie register_tick_function laat jou toe om 'n funksie te registreer wat op elke tick van die skripuitvoering afgeroep sal word. Dit neem die funksienaam of anonieme funksie as die eerste parameter, en die daaropvolgende parameters is die argumente vir die oorgedraagde funksie. Vir die funksie om te werk, moet ticks aangeskakel word met declare(ticks=N), waar N die aantal ticks tussen oproepe is.

Sintaksis

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

Voorbeeld

'n Eenvoudige voorbeeld van die registrasie van 'n funksie vir uitvoering op elke tick:

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

Resultaat van die kode-uitvoering:

phpTick executed
Tick executed
Tick executed
Tick executed

Voorbeeld

Gebruik van 'n anonieme funksie met parameters:

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

Resultaat van die kode-uitvoering:

phpTick!
Tick!

Voorbeeld

Kansellasie van funksieregistrasie met unregister_tick_function:

php<?php
  declare(ticks=1);
  
  function tick_log() {
    echo date('H:i:s') . "\n";
  }
  
  register_tick_function('tick_log');
  
  // Eerste deel van die kode
  $a = 10;
  $b = 20;
  
  unregister_tick_function('tick_log');
  
  // Tweede deel van die kode
  $c = $a + $b;
?>

Resultaat van die kode-uitvoering:

php14:25:03
14:25:03

Sien ook