• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

如何停止php执行

php 搞代码 4年前 (2022-01-23) 11次浏览 已收录 0个评论

我现在搞了个采集的php代码,把网页的数据采集下来保存在桌面,现在测试的时候发现一个问题,在浏览器关闭的情况下,php还在继续执行生成数据,问题来了:如何在关闭浏览器或者点击浏览器上url输入后面的停止按钮使得php代码不再继续执行?

回复(、本文来源gao@!dai!ma.com搞$$代^@码网*搞gaodaima代码讨论(解决方案)

php默认是关闭就停止执行了啊,你用ajax请求php吗?

回复楼上的没有用ajax

直接关闭浏览器就停止了,当前的PHP操作了。

建议从几个角度去查问题:
1.浏览器的进程是否结束
2.Linux的情况,使用不同WEB服务时,配置是否正确,是否存在配置导致浏览器关闭,但是WEB服务的当前进程仍然在执行。

伪进程?
很多人想搞还搞不来呢!
你需要在你的代码中设施并处理可以触及到的终止信号

最近我也发现了这个问题, 浏览器关闭, 程序是会执行的。

但是应该是执行完当前的内容后, 就会停止。

如果你是本地测试, 我一般都直接重启服务。

你要做采集, 建议还是用bin方式来做。

最近我也发现了这个问题, 浏览器关闭, 程序是会执行的。

但是应该是执行完当前的内容后, 就会停止。

如果你是本地测试, 我一般都直接重启服务。

你要做采集, 建议还是用bin方式来做。

bin方式指的是?求指点

set_time_limit();

设置脚本最多执行的时间,是最简单的方法。

呵呵,你虽然关了浏览器,但是程序的指令早就已经发出去了,再他未完成所有的指令之前,假如没有给停止命令(是的是跟底层,服务器有关的指令,不是指管浏览器),之前的未完成的指令会继续执行,知道指令完成或者被迫停止(比如重启服务器,或者重启web服务程序)

加个exit()试试看

嗯,我的采集也出现了这个问题,关闭了浏览器,还一直在下。我的猜想是跟php curl的工作机制有关,具体原因不清楚。

起初我注销电脑都不行,一定是重启。
可能因为是http协议,最后我在进程里关闭浏览器的进程就可以了;另外我觉得可以关闭apache服务应该也可以,没试过。

程序设置了最大执行时间很长,程序里面用了sleep主要防止采集的太快封ip,不知道和这个有没关系。

程序设置了最大执行时间很长,程序里面用了sleep主要防止采集的太快封ip,不知道和这个有没关系。 目测和这个没有关系,php curl是可以支持代理的。

跟这个没关系,但跟你的程序写法有关系,由于并没有看到你的程序,所以也不能明确的说

一般的说:
当关闭浏览器,程序会终止(php 还专门设有函数来改变这个行为),是有条件的
这个条件就是程序必须有输出
php 只在有输出时才去检查到用户的连接是否断开

先在任务管理器确认浏览器进程是否关闭了再谈更高深的问题吧

我关浏览器通常都要等几分钟进程才结束,机器年代久远……

还是没找到解决办法,只有重启apache才能终止。

就是php的命令行方式, 而且最好是在Linux下面使用, 稳定。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:如何停止php执行

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址