PHP file_get_contents 函数超时的几种解决方法


Posted in PHP onJuly 30, 2009

这里就简单介绍两种:
一、增加超时的时间限制
这里需要注意:set_time_limit只是设置你的PHP程序的超时时间,而不是file_get_contents函数读取URL的超时时间。
我一开始以为set_time_limit也能影响到file_get_contents,后来经测试,是无效的。真正的修改file_get_contents延时可以用resource $context的timeout参数:

$opts = array( 
‘http'=>array( 
‘method'=>”GET”, 
‘timeout'=>60, 
) 
); 
$context = stream_context_create($opts); 
$html =file_get_contents('http://www.example.com', false, $context); 
fpassthru($fp);

二、一次有延时的话那就多试几次
有时候失败是因为网络等因素造成,没有解决办法,但是可以修改程序,失败时重试几次,仍然失败就放弃,因为file_get_contents()如果失败将返回 FALSE,所以可以下面这样编写代码:
$cnt=0; 
while($cnt < 3 && ($str=@file_get_contents('http…'))===FALSE) $cnt++;
PHP 相关文章推荐
用php和MySql来与ODBC数据连接
Oct 09 PHP
php daodb插入、更新与删除数据
Mar 19 PHP
解析:使用php mongodb扩展时 需要注意的事项
Jun 18 PHP
php获取指定日期之间的各个周和月的起止时间
Nov 24 PHP
Laravel框架中实现使用阿里云ACE缓存服务
Feb 10 PHP
WordPress自定义时间显示格式
Mar 27 PHP
PHP生成指定随机字符串的简单实现方法
Apr 01 PHP
PHP获取客户端及服务器端IP的封装类
Jul 21 PHP
PHP使用Redis替代文件存储Session的方法
Feb 15 PHP
PHP实现的简单sha1加密功能示例
Aug 27 PHP
laravel实现上传图片并在页面显示的例子
Oct 14 PHP
PHP number_format函数原理及实例解析
Jul 14 PHP
一个PHP数组应该有多大的分析
Jul 30 #PHP
PHP UTF8编码内的繁简转换类
Jul 20 #PHP
php 验证码制作(网树注释思想)
Jul 20 #PHP
php PDO中文乱码解决办法
Jul 20 #PHP
PHP 配置文件中open_basedir选项作用
Jul 19 #PHP
PHP form 表单传参明细研究
Jul 17 #PHP
php与php MySQL 之间的关系
Jul 17 #PHP
You might like
php扩展ZF――Validate扩展
2008/01/10 PHP
微盾PHP脚本加密专家php解密算法
2020/09/13 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
2014/12/17 PHP
php生成不重复随机数、数组的4种方法分享
2015/03/30 PHP
php简单的上传类分享
2016/05/15 PHP
thinkphp查询,3.X 5.0方法(亲试可行)
2017/06/17 PHP
PHP数据库操作四:mongodb用法分析
2017/08/16 PHP
javascript 面向对象编程  function是方法(函数)
2009/09/17 Javascript
Array.prototype.slice 使用扩展
2010/06/09 Javascript
一个简单的js动画效果代码
2010/07/20 Javascript
JavaScript中“过于”犀利地for/in循环使用示例
2013/10/22 Javascript
NodeJS制作爬虫全过程
2014/12/22 NodeJs
AngularJS之自定义服务详解(factory、service、provider)
2017/04/14 Javascript
使用mint-ui实现省市区三级联动效果的示例代码
2018/02/09 Javascript
详解vue2.0+axios+mock+axios-mock+adapter实现登陆
2018/07/19 Javascript
Vue中computed、methods与watch的区别总结
2019/04/10 Javascript
nodejs对项目下所有空文件夹创建gitkeep的方法
2019/08/02 NodeJs
[01:14:05]《加油DOTA》第四期
2014/08/25 DOTA
[38:54]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第一场 11.28
2020/12/01 DOTA
Python入门篇之字符串
2014/10/17 Python
详解Python中映射类型(字典)操作符的概念和使用
2015/08/19 Python
Python设计模式之原型模式实例详解
2019/01/18 Python
Windows下PyCharm2018.3.2 安装教程(图文详解)
2019/10/24 Python
python 使用事件对象asyncio.Event来同步协程的操作
2020/05/04 Python
在keras下实现多个模型的融合方式
2020/05/23 Python
Pycharm在指定目录下生成文件和删除文件的实现
2020/12/28 Python
matplotlib运行时配置(Runtime Configuration,rc)参数rcParams解析
2021/01/05 Python
企业管理毕业生求职信
2014/03/11 职场文书
平安建设实施方案
2014/03/19 职场文书
股份转让协议书
2014/04/12 职场文书
党员个人对照检查材料
2014/10/01 职场文书
银行贷款收入证明
2014/10/17 职场文书
大学生年度个人总结
2015/02/15 职场文书
保安辞职信范文
2015/02/28 职场文书
在Windows下安装配置CPU版的PyTorch的方法
2021/04/02 Python
常用的MongoDB查询语句的示例代码
2021/07/25 MongoDB