PHP-sleep()以毫秒为单位

PHP-sleep()以毫秒为单位,php,synchronization,sleep,Php,Synchronization,Sleep,PHP是否提供以毫秒为单位睡眠的函数 现在,我正在做类似的事情,作为解决办法 $ms = 10000; $seconds = round($ms / 1000, 2); sleep($seconds); 我想知道PHP中是否有更通用的函数可以实现这一点,或者有更好的方法来处理这一点。这是您唯一实用的选择: 因此,要睡眠两毫秒: usleep( 2 * 1000 ); 要睡眠四分之一秒: usleep( 250000 ); 请注意,sleep()与整数一起工作,sleep(0.25)将作为

PHP是否提供以毫秒为单位睡眠的函数
现在,我正在做类似的事情,作为解决办法

$ms = 10000;
$seconds = round($ms / 1000, 2);
sleep($seconds);

我想知道PHP中是否有更通用的函数可以实现这一点,或者有更好的方法来处理这一点。

这是您唯一实用的选择:

因此,要睡眠两毫秒:

usleep( 2 * 1000 );
要睡眠四分之一秒:

usleep( 250000 );

请注意,
sleep()
与整数一起工作,
sleep(0.25)
将作为
sleep(0)
执行,这意味着此函数将立即完成

$i = 0;
while( $i < 5000 )
{
  sleep(0.25);
  echo '.';
  $i++;
}
echo 'done';
$i=0;
而($i<5000)
{
睡眠(0.25);
回声';
$i++;
}
回音“完成”;

我想没有函数接受毫秒作为参数?没有,文档中没有专门针对毫秒的内容,usleep是非整秒granualrity的唯一选项。为什么要舍入?不,没有需要毫秒的重载。只需除以1000就足够了。
time\u nanosleep()
time\u sleep\u until()
是其他睡眠函数,但我不认为它们是可行的替代方法。您可以使用system或exec执行外部程序。这将允许您使用允许小数的linux(不确定是否与windows等效)睡眠(如果已加载)。我已经多次使用它来降低对API的请求速度,您需要每秒超过1次。系统('sleep.1');