php获取数据太长超时 php获取当前时间提交数据库

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

这里就简单介绍两种:

创新互联专注于深州企业网站建设,成都响应式网站建设公司,成都商城网站开发。深州网站建设公司,为深州等地区提供建站服务。全流程按需网站设计,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

一、增加超时的时间限制

这里需要注意: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('',

false,

$context);

fpassthru($fp);

二、一次有延时的话那就多试几次

有时候失败是因为网络等因素造成,没有解决办法,但是可以修改程序,失败时重试几次,仍然失败就放弃,因为file_get_contents()如果失败将返回

FALSE,所以可以下面这样编写代码:

复制代码

代码如下:

$cnt=0;

while($cnt

3

($str=@file_get_contents('http…'))===FALSE)

$cnt++;

几种常见的PHP超时处理方法

一、在php.ini里面设置 max_execution_time = 1800;

二、通过PHP的ini_set 函数设置 ini_set("max_execution_time", "1800");

三、通过set_time_limit 函数设置 set_time_limit(1800) ;

PHP 用fopen读取网页内容总是超时

好像默认的是每个页面中脚本的执行时间最大30秒,估计你在脚本运行抓取这10页面时超过了30秒,所以就会报超时!

你可以在脚本前面加一句 ini_set('max_execution_time', '0');

把脚本最大执行时间设置为0,这样就是无时间限制,直到脚本执行完成!


网站栏目:php获取数据太长超时 php获取当前时间提交数据库
文章源于:http://scyanting.com/article/ddcosej.html