我来分享一下在 PHP 里面咋用 sleep()
这个函数。说白,这玩意儿就是让你的程序歇一会儿,你想让它歇多久,它就歇多久。
我以为这东西没啥用,不就是让程序停一下嘛后来我发现,有些时候还真得用上它。
比如说,你要写个程序,每隔几秒钟去检查一下某个东西的状态,或者说,你想模拟一个需要等一会儿才能完成的操作,这时候sleep()
就派上用场。
我第一次用它的时候,就是想看看效果,所以我就写几行代码:
<?php
echo "开始!";
sleep(5);

echo "5秒过完咯!";
?>
看看,就这么简单。 我运行这段代码,然后就盯着屏幕,等5秒钟,果然,"5秒过完咯!" 这句话就蹦出来。
后来我有个需求,需要每隔一段时间去抓取一些数据。你知道的,抓数据不能太频繁,不然人家服务器会不高兴的。我就在每次抓取完数据之后,用 sleep()
让程序休息个几十秒,这样就不会给人家服务器造成太大的压力。
我的代码大概是这样的:
<?php
while (true) {
// 这里是抓取数据的代码,我就省略...
echo "抓完一次数据!";
sleep(60); // 休息60秒
echo "休息继续干活!";
?>
就是这样, 我用一个 while(true)
让程序一直跑,然后在每次循环的用 sleep(60)
让程序休息 60 秒。这样,我的程序就可以每隔一分钟去抓取一次数据。
你也可以根据你的需要,调整 sleep()
里面的数字,想让程序休息多久都行。不过要注意,这个数字的单位是秒。
- 如果你想让程序休息更短的时间,比如说几毫秒,那你就得用
usleep()
这个函数。 - 不过我平时用
sleep()
比较多,毕竟大多数时候,我也不需要那么精确的时间控制。
总结一下
sleep()
这个函数还是挺简单的,也挺实用的。就是让程序暂停执行一段时间,具体停多久,由你来决定。你要是觉得程序跑得太快,想让它慢点儿,或者需要定时执行一些任务,都可以考虑用它。