php中暂停代码的执行一般都会用到 sleep() 与 usleep() 函数,虽然它们两个都可以达到暂停代码执行的效果,但它们之间还是有些差别的,下面飞鸟慕鱼就来详细的和大家说一说。

php sleep() 函数

sleep():延迟执行当前代码n秒

语法:

sleep(seconds)

参数:

seconds:延迟执行的秒数

例:php 延迟执行5秒

<?php
echo date('H:i:s');
sleep(5);
echo '<br/>';
echo date('H:i:s');
?>

输出结果:

21:17:40
21:17:45

php usleep() 函数

usleep():延迟执行当前代码n秒

语法:

usleep(microseconds)

参数:

microseconds:以微秒为单位的时间

1秒 = 1000毫秒 ,1毫秒 = 1000微秒,即1微秒等于百万分之一秒。

例:php 代码暂停 100 毫秒

<?php
//获取毫秒的时间
function msectime(){
    list($msec, $sec) = explode(' ', microtime());
    $msectime =  (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000);
    return $msectime;
}
$time = msectime();
echo date('H:i:s').' '.substr($time, -3);
echo '<br/>';
//暂停 100 毫秒
// 100 毫秒 == 100000 微秒
usleep(100000);
$time = msectime();
echo date('H:i:s').' '.substr($time, -3);
?>

输出结果:

21:37:04 504
21:37:04 605

php sleep() 函数与 usleep() 函数的区别

1、sleep() 函数的计量单位为秒

2、usleep() 函数的计量单位为微秒

3、usleep() 函数的暂停时间,以cpu或系统的调度有关,不一定准确