PHP 杂项函数

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.