您的位置:

php下载远程图片超时,php下载远程图片超时了

本文目录一览:

怎样解决php页面的载入超时问题?

当PHP页面处理大事务时,页面往往会发生超时的错误,我解决此问题的方法如下:1.优化程序代码:这种方法可能有时立竿见影,但对一些已经很优化或者第三方开发的程序,可能用处不大,但我个人觉得这个办法还是应该优先考虑,这个一个优秀程序员必需有的工作美德。2.对多个任务进行拆分:对于一些程序,可能问题并不出现在代码效率上,如Paypal的SOAP调用,大量时间花费在网络的数据传递上了,(此问题在Web Services的远程调用时经常发生),我们当然不能等将来网速的提高来解决这个问题。其实我们可以查看一下在一个POST动作中是否包含了多个任务,如付费、发Email、发货等等。如是这样其实可以对这些任务进行拆分,把这个工作拆分成多个子工作来实现。如执行完付费任务时,使用PHP的Header函数重定向到发送Email的页面,完成后再定向到其他页面,采用redirect页面的方式来接力地完成任务。3.进行PHP设定值的修改如果以上两种方法仍然无法解决,代码已经最优话,同时只有一个单任务的工作需要完成。针对这样的情况,只能修改PHP的设定值了。不过建议不要直接修改PHP.ini,这样会延长所有PHP执行的最大时间。简单的方法就是使用init_set函数,以下的代码把PHP最大执行时间设定为180秒。ini_set('max_execution_time', '180');同时可以使用ini_get把原来设置的max_execution_time保存下来,在进行完操作时回复原来的设定值。

php 编程,使用file_get_contents('http://www.vketch.com/')获取远程页面超时为什么不会返回false

你用的这个函数由于使用的是高层传输协议,很容易超时,即使能够判断也因为重试次数太多而无法使用。至于curl函数,则不是为这种应用设计的。最好是使用fsocket函数,不会存在你说的问题。

php readfile 下载远程图片超时怎么办

?php

$url = '';

$matches = parse_url($url);

$host = $matches['host'];

$path = $matches['path'] ? $matches['path'].(isset($matches['query']) ? '?'.$matches['query'] : '') : '/';

$port = !empty($matches['port']) ? $matches['port'] : 80;

$out = "GET $path HTTP/1.0\r\n";

$out .= "Host: $host\r\n";

$out .= "\r\n\r\n";

$fp = @fsockopen($host, $port, $errno, $errstr, 10);

stream_set_blocking($fp, TRUE);

stream_set_timeout($fp, $timeout);

@fwrite($fp, $out);

$status = stream_get_meta_data($fp);

while (!feof($fp)) {

if(($header = @fgets($fp)) ($header == "\r\n" || $header == "\n")) {

break;

}

}

$return = '';

while(!feof($fp)) {

$data = fread($fp, 8192);

$return .= $data;

}

@fclose($fp);

echo $return;

在php中 为什么用 readfile 函数读取网络图片,有时成功有时失败呢?

是不是网速问题,没有读完图片就超时了

在php.ini中可以设置超时时间,和最大缓存量

PHP下载远程图片jpg 格式,

?php

    header("Content-type: application/octet-stream"); 

    header("Accept-Ranges: bytes"); 

    header("Accept-Length:".filesize($path)); 

    header("Content-Disposition: attachment; filename=".basename($path));

    readfile($path);

?

PHP远程图片获取时的特殊情况,求助

请详细说下你的需求 你只写了个标题 不知道你具体出现了什么问题。