首页 / 个人笔记 /

PHP中有什么方法实现脚本延迟执行 PHP睡眠时间代码

2022-10-17 10:24:19个人笔记阅读 0

php中有3种函数可实现延迟执行功能:

  • sleep()函数

  • time_nanosleep()函数

  • time_sleep_until()函数

1、使用sleep()函数来延迟执行一个函数

sleep函数表示延缓执行,可延迟执行当前脚本若干秒。语法为:

sleep($seconds)

该函数只接受一个必需参数 $seconds,用于指定脚本需要延迟多少秒。如果成功则返回 0,如果错误则返回          FALSE;如果调用被信号中断,该函数返回一个非零值。

我们通过具体示例来了解一下:

<?php
// 当前时间
echo date("Y-m-d H:i:s")."<br>";
function f($a, $b=33, $c=57){
 // 延迟5秒钟
 sleep(5);
    echo date("Y-m-d H:i:s");
}
f(11);
?>

输出结果:

2、使用time_nanosleep()函数来延迟执行一个函数

time_nanosleep() 函数延迟执行当前脚本若干秒和纳秒。语法为:

time_nanosleep($seconds,$nanoseconds)

该函数接受2个必需参数 $seconds(延迟秒数) 和$nanoseconds(延迟纳秒数)。如果成功则返回 0,如果错误则返回          FALSE;如果调用被信号中断,将返回带有延迟中剩余的秒数和延迟中剩余的纳秒数的关联数组。

我们通过具体示例来了解一下:

<?php
// 当前时间
echo date("Y-m-d H:i:s")."<br>";
function f($a, $b=33, $c=57){
 // 延迟5.5秒钟
 time_nanosleep(5,500000000);
    echo date("Y-m-d H:i:s");
}
f(11);
?>

输出结果:

3、使用time_sleep_until()函数来延迟执行脚本程序

time_sleep_until() 函数延迟执行当前脚本直到指定的时间。语法为:

time_sleep_until($timestamp)

该函数只接受一个必需参数 $timestamp,用于规定唤醒的时间。如果成功则返回 0,如果错误则返回 FALSE。

我们通过具体示例来了解一下:

<?php
// 当前时间
echo date("Y-m-d H:i:s")."<br>";
function f($a, $b=33, $c=57){
 // 延迟7秒钟
 time_sleep_until(time()+7);
    echo date("Y-m-d H:i:s");
}
f(11);
?>

输出结果:

猜你喜欢

  • 帝国CMS插件

    帝国CMS自动标题图片并随机插入正文内容的插件

    插件功能1、可以将文章标题自动设置为标题图片2、背景图片随机3、文字过多会自动变成2行,4,更多定制功能请联系站长定制5、php版本最高为7.1插件安装方法1、下载插件2、将插件上传至网站/e/extend/目录,3、找多张背景图片,将图片得宽度统一调整为500px,将图片放进src文件夹;4、访问网站地址/e/extend/autopic/action.php?pwd=3615261,生成统一的

    2022-04-10 22
  • 帝国CMS插件

    帝国cms付费可复制+下载word插件+关注公众号下载功能

    本插件支持的支付接口:虎皮椒微信,虎皮椒支付宝温馨提示:接口开通需开通带H5支付功能帝国cms付费可复制插件功能1、付费复制内容2、付费正文内容转word下载3、关注公众号免费下载内容,可以定义每天下载次数,可以关闭。多个公众号随机。4、免费下载用完跳转到付费下载5、实现不用登陆即可付费下载或者复制6、插件没有改变程序核心代码7、可以统一资源价格,也可以单独为某篇资源价格8、插件是响应式,PC和移

    2022-04-14 22
  • 帝国CMS插件

    帝国CMS7.5自动定时审核发布插件和自动提交百度插件

    帝国CMS7.5自动定时审核发布插件插件功能1、可以自定义栏目审核顺序,2、可以指定每天审核总量3、依次每个栏目审核3条,知道审核完当天的数量插件教程1、上传目录autosh到/e/extend/目录,2、修改文件//自定义审核栏目顺序 可以不设置//$classlit="4";//PC百度token$yuming="http://www.mihua114.com";//结尾不带/$token="

    2022-04-10 22