如果我想在PHP中暂停代码执行,我是否使用sleep()
?
如果是这样,当传递给sleep()
的秒数正在运行时,客户端究竟发生了什么?没有?它只是等待来自网络服务器的回复?或者它告诉浏览器 - “好的,我收到了您的请求,但您必须等待X秒才能发送回复。” ?
谢谢。
答案 0 :(得分:7)
sleep()只是暂停指定时间间隔的脚本。在内部,它告诉操作系统“我要睡觉,在X秒内叫醒我”。除非PHP脚本向客户端浏览器输出一条消息,否则它将暂停,浏览器将一直挂起,直到它确定连接已死,网络连接因缺少活动而死亡,或者脚本唤醒并恢复操作。 sleep()是一个纯粹的服务器端操作,不会改变客户端上的任何内容。
答案 1 :(得分:5)
客户端等待。不以任何方式告知您浪费时间: - )
答案 2 :(得分:1)
首先,我确信,一个Web服务器无法知道脚本将在多长时间内结束,想象一下脚本处理一个繁重的mysql查询,它怎么能告诉它何时结束。
如果我想暂停PHP中的代码执行,我是否使用sleep()?
这一般都是正确的,但是每个案例都不同,也许在某些情况下可以找到其他解决方案(也许是ajax?!取决于......)