PHP cURL 超时设置 CURLOPT_CONNECTTIMEOUT 和 CURLOPT_TIMEOUT 的区别
PHP 设置 区别 超时 CURL timeout
2023-06-13 09:18:33 时间
PHP cURL 的超时设置有两个 CURLOPT_CONNECTTIMEOUT 和 CURLOPT_TIMEOUT,他们的区别是:
- CURLOPT_CONNECTTIMEOUT 用来告诉 PHP 在成功连接服务器前等待多久(连接成功之后就会开始缓冲输出),这个参数是为了应对目标服务器的过载,下线,或者崩溃等可能状况。
- CURLOPT_TIMEOUT 用来告诉成功 PHP 从服务器接收缓冲完成前需要等待多长时间,如果目标是个巨大的文件,生成内容速度过慢或者链路速度过慢,这个参数就会很有用。
使用 cURL 下载 MP3 文件是一个对开发人员来说不错的例子,CURLOPT_CONNECTTIMEOUT 可以设置为10秒,标识如果服务器10秒内没有响应,脚本就会断开连接,CURLOPT_TIMEOUT 可以设置为100秒,如果MP3文件100秒内没有下载完成,脚本将会断开连接。
需要注意的是:CURLOPT_TIMEOUT 默认为0,意思是永远不会断开链接。所以不设置的话,可能因为链接太慢,会把 HTTP 资源用完。
在 WordPress 中,wp_http 类,这两个值是一样的,默认是设置为 5 秒。
相关文章
- PHP strtotime():从字符串中提取时间日期
- PHP Session的优化使用详解编程语言
- MySQL与PHP设置时区(mysql时区php)
- 数据PHP编程:从MySQL数据库中取出数据(php取mysql)
- 借助 PHP 与 MySQL 轻松实现文件下载(php和mysql下载)
- 环境PHP和MySQL环境搭建:快速、安全、便捷(php和mysql配置)
- PHP与Redis出色的结合(php连redis)
- 使用PHP操作Redis实例:简单高效的数据存储方案(php操作redis实例)
- PHP如何获取MySQL版本?(php获取mysql版本)
- PHP与MySQL:如何实现连接?(php怎么连mysql)
- 调整PHP和MySQL提升性能(phpmysql性能)
- PHP遍历MySQL:从基本循环到高效操作(php遍历mysql)
- 善数据库性能用PHP连接MSSQL提升数据库性能(php连接mssql改)
- PHP与MSSQL联合 处理日期数据(php mssql 日期)
- 在PHP中操作MSSQL数据库:事务处理技巧(php mssql 事务)
- MySQL与PHP开发之旅(mysql与php书籍)
- 生成卡号php代码
- PHP常用特殊运算符号和函数总结(php新手入门必看)
- 分享一段php获取linux服务器状态的代码