PHP - sleep(),以毫秒为单位

Nav*_*han 14 php synchronization sleep

PHP是否提供以毫秒为单位睡眠的功能?
现在,我正在做类似的事情,作为一种解决方法.

$ms = 10000;
$seconds = round($ms / 1000, 2);
sleep($seconds);
Run Code Online (Sandbox Code Playgroud)

我想知道PHP中是否有更通用的功能来执行此操作,或者更好的处理方法.

Scu*_*zzy 38

这是你唯一的实用选择:usleep - 以微秒为单位延迟执行

所以要睡两个小时:

usleep( 2 * 1000 );
Run Code Online (Sandbox Code Playgroud)

睡一个星期四:

usleep( 250000 );
Run Code Online (Sandbox Code Playgroud)

请注意,sleep()使用整数,sleep(0.25)将执行为sleep(0)含义此函数将立即完成.

$i = 0;
while( $i < 5000 )
{
  sleep(0.25);
  echo '.';
  $i++;
}
echo 'done';
Run Code Online (Sandbox Code Playgroud)

  • @Scuzzy 是的,我想这样做,直到我在 PHP 文档中看到这一点:“注意:操作系统可能不支持大于 1000000 的值(即睡眠超过一秒)。请改用 sleep()。” (2认同)