:

设置PHP curl超时

发布于:2019-1-30 13:49 作者:song100e 浏览:38 分类:PHP
    PHP CURL的超时设置有两个 CURLOPT_CONNECTTIMEOUT CURLOPT_TIMEOUT,他们的区别是:
    CURLOPT_CONNECTTIMEOUT:在成功连接服务器前等待多久(连接成功之后就会开始缓冲输出),这个参数是为了应对目标服务器的过载、下线或者崩溃等可能状况。
    CURLOPT_TIMEOUT:从服务器接收缓冲完成前需要等待多长时间,如果目标是个巨大的文件,生成内容速度过慢或者链路速度过慢,这个参数就会很有用。
应用举例:
    使用 curl 下载 MP4 文件是一个对开发人员来说不错的例子,CURLOPT_CONNECTTIMEOUT 可以设置为10秒,标识如果服务器 10 秒内没有响应,脚本就会断开连接,CURLOPT_TIMEOUT 可以设置为 100 秒,如果 MP3 文件 100 秒内没有下载完成,脚本将会断开连接。

需要注意的是:CURLOPT_TIMEOUT 默认为 0,意思是永远不会断开链接。所以不设置的话,可能因为链接太慢,会把 HTTP 资源用完。

php_curl.PNG

标签: curl

0