register_tick_function関数
register_tick_function関数は、スクリプト実行の各ティックで呼び出される関数を登録することができます。最初のパラメータとして関数名または無名関数を受け取り、それ以降のパラメータは渡される関数への引数です。この関数を動作させるには、declare(ticks=N)でティックを有効にする必要があります。ここでNは呼び出し間のティック数です。
構文
register_tick_function(callable $function, mixed ...$args);
例
各ティックで実行する関数を登録する簡単な例:
<?php
declare(ticks=1);
function tick_handler() {
echo "Tick executed\n";
}
register_tick_function('tick_handler');
$a = 1;
$b = 2;
$c = $a + $b;
?>
コード実行結果:
Tick executed
Tick executed
Tick executed
Tick executed
例
パラメータ付きの無名関数の使用:
<?php
declare(ticks=2);
register_tick_function(function($msg) {
echo $msg . "\n";
}, "Tick!");
for ($i = 0; $i < 5; $i++) {
// 何らかのコード
}
?>
コード実行結果:
Tick!
Tick!
例
unregister_tick_functionによる関数登録の解除:
<?php
declare(ticks=1);
function tick_log() {
echo date('H:i:s') . "\n";
}
register_tick_function('tick_log');
// コードの最初の部分
$a = 10;
$b = 20;
unregister_tick_function('tick_log');
// コードの二番目の部分
$c = $a + $b;
?>
コード実行結果:
14:25:03
14:25:03
関連項目
-
ティックでの実行関数の登録を解除する関数
unregister_tick_function