register_tick_function 함수

register_tick_function 함수는 스크립트 실행 시 각 틱마다 호출될 함수를 등록할 수 있게 합니다. 첫 번째 매개변수로 함수 이름이나 익명 함수를 받고, 이후 매개변수들은 전달될 함수의 인수들입니다. 이 함수가 작동하려면 declare(ticks=N)를 사용하여 틱을 활성화해야 합니다. 여기서 N은 호출 사이의 틱 수입니다.

구문

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

예제

각 틱마다 실행할 함수를 등록하는 간단한 예제:

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

코드 실행 결과:

phpTick executed
Tick executed
Tick executed
Tick executed

예제

매개변수가 있는 익명 함수 사용하기:

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

코드 실행 결과:

phpTick!
Tick!

예제

unregister_tick_function을 사용하여 함수 등록 해제하기:

php<?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;
?>

코드 실행 결과:

php14:25:03
14:25:03

함께 보기