PHP time_nanosleep() 函数用于将程序执行延迟指定的秒数 和纳秒。
语法
time_nanosleep(seconds, nanoseconds)
参数
seconds | 必填。 指定停止时间(以秒为单位)。它必须是非负整数。 |
nanoseconds | 必填。 指定停止时间(以纳秒为单位)。必须是小于10亿的非负整数。 |
返回值
成功则返回true,失败则返回false。
如果延迟被信号中断,则将返回一个关联数组,其中包含以下组件:
- seconds- 延迟中剩余的秒数
- nanoseconds - 延迟中剩余的纳秒数
示例:time_nanosleep() 示例
下面的示例显示了time_nanosleep() 的用法 函数。
<?php
//如果出现以下情况,这将无法按预期工作
//返回数组(返回数组
//延迟中断时)
//延迟执行0.5秒
if (time_nanosleep(0, 500000000)) {
echo "Slept for half a second.\n";
}
//这是使用此函数的更好方法
//延迟执行0.5秒
if (time_nanosleep(0, 500000000) === true) {
echo "Slept for half a second.\n";
}
//使用该函数的最佳方式
//延迟执行1.5秒
$nano = time_nanosleep(1, 500000000);
if ($nano === true) {
echo "Slept for 1.5 seconds.\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.";
}
?>
上述代码的输出将类似于:
Slept for half a second.
Slept for half a second.
Slept for 1.5 seconds.