Web aym.pekori.to

time_nanosleep

(PHP 5)

time_nanosleep --  秒およびナノ秒単位で実行を遅延する

説明

mixed time_nanosleep ( int seconds, int nanoseconds )

指定した seconds および nanoseconds の時間だけプログラムの実行を 遅延させます。

seconds は正の整数、そして nanoseconds は 10 億より小さい正の整数である必要があります。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

シグナルによって遅延処理が中断された場合、以下の要素からなる 連想配列を返します。

参考

sleep(), usleep(), set_time_limit()

例 1. time_nanosleep() の例

<?php
// 注意! もし配列が返された場合、これはうまく動作しない
if (time_nanosleep(0, 500000000)) {
    echo
"Slept for half a second.\n";
}

// こちらのほうがよい
if (time_nanosleep(0, 500000000) === true) {
    echo
"Slept for half a second.\n";
}

// そしてこれが最良の方法
$nano = time_nanosleep(2, 100000);

if (
$nano === true) {
    echo
"Slept for 2 seconds, 100 milliseconds.\n";
} elseif (
$nano === false) {
    echo
"Sleeping failed.\n";
} elseif (
is_array($nano)) {
    
$seconds = $nano['seconds'];
    
$nanoseconds = $nano['nanoseconds'];
    echo
"Interrupted by a signal.\n";
    echo
"Time remaining: $seconds seconds, $nanoseconds nanoseconds.";
}
?>

注意: この関数は Windows 環境にはまだ実装されていません。