time_nanosleep
(PHP 5, PHP 7)
time_nanosleep — 秒およびナノ秒単位で実行を遅延する
説明
time_nanosleep
( int $seconds
, int $nanoseconds
) : mixed
指定した seconds
および
nanoseconds
の時間だけプログラムの実行を遅延させます。
パラメータ
seconds
非負の整数である必要があります。
nanoseconds
十億よりも小さい非負の整数である必要があります。
注意:
Windows では、与えられたナノ秒以上に長くスリープする可能性があります。 動作はハードウェア依存です。
返り値
成功した場合に true
を、失敗した場合に false
を返します。
シグナルによって遅延処理が中断された場合、以下の要素からなる連想配列を返します。
-
seconds
- 残りの秒数 -
nanoseconds
- 残りのナノ秒数
例
例1 time_nanosleep() の例
<?php// 注意! もし配列が返された場合、これはうまく動作しませんif (time_nanosleep(0, 500000000)) { echo "0.5 秒遅延しました。\n";}// こちらのほうがよいでしょうif (time_nanosleep(0, 500000000) === true) { echo "0.5 秒遅延しました。\n";}// そしてこれが最良の方法です$nano = time_nanosleep(2, 100000);if ($nano === true) { echo "2 秒と 100 マイクロ秒だけ遅延しました。\n";} elseif ($nano === false) { echo "遅延に失敗しました。\n";} elseif (is_array($nano)) { $seconds = $nano['seconds']; $nanoseconds = $nano['nanoseconds']; echo "シグナルによって中断しました。\n"; echo "残りの秒数は $seconds 秒と $nanoseconds ナノ秒です。";}?>
参考
- sleep() - 実行を遅延させる
- usleep() - マイクロ秒単位で実行を遅延する
- time_sleep_until() - 指定した時刻まで実行を遅延する
- set_time_limit() - 実行時間の最大値を制限する