【PHP8.x】time_nanosleep関数の使い方

作成日: 更新日:

time_nanosleep関数は、PHPプログラムの実行を指定された時間だけ一時停止させる機能を提供する関数です。この関数は、スクリプトの処理を指定された秒数とナノ秒数の合計時間だけ中断します。ナノ秒は10億分の1秒と非常に短い時間単位で、より精密な時間間隔での待機が必要な場合に活用されます。

引数としては、$secondsで停止したい秒数を非負の整数で、また$nanosecondsで停止したいナノ秒数を0から999,999,999の範囲の非負の整数として指定します。例えば、外部リソースへの過剰な連続アクセスを避けるための短い休止や、一定間隔での状態確認といったポーリング処理などに役立ちます。

PHP 8.0.0以降のバージョンでは、この関数は常にtrueを返します。ただし、指定された時間の一時停止精度は、プログラムが動作するオペレーティングシステムの性能に依存するため、厳密な時間が保証されるわけではない点にご留意ください。

基本的な使い方

構文(syntax)

<?php
$success = time_nanosleep(1, 500000000);

引数(parameters)

引数なし

引数はありません

戻り値(return)

array|false

指定された時間(秒とナノ秒)だけ処理を一時停止します。成功した場合は、配列で経過時間(秒とナノ秒)を返します。失敗した場合は false を返します。

【PHP8.x】time_nanosleep関数の使い方 | いっしー@Webエンジニア