批量下载的图片都是0字节,该怎么解决

WBOY
发布: 2016-06-13 10:24:04
原创
1642 人浏览过

批量下载的图片都是0字节

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php $conn = mysql_connect("127.0.0.1","root","123456") or die("无法连接数据库");@mysql_query("SET character_set_connection=utf8, character_set_results=utf8, character_set_client=binary",$conn);mysql_select_db("s517",$conn) or die("无法连接数据库");global $db;function getImage($url, $filename="") {if(!$url) return false;if(!$filename) {  $ext=strrchr(strtolower($url),".") ;  if($ext!=".gif" && $ext!=".jpg" && $ext!=".png") return false;  $str=explode('/',$url) ;  $filename=$str[count($str)-1] ;}ob_start();readfile($url);$img = ob_get_contents();ob_end_clean();[email&#160;protected]($filename, "a") ;fclose($fp2) ;return $filename;}//批量下载    $result = mysql_query("SELECT itemid, thumb FROM table LIMIT 0 , 300");    while($row = mysql_fetch_array($result)) {    getImage($row["thumb"],"");    echo $row["itemid"]."输出成功";     }?>
登录后复制

table里面的thumb是采集的远程图片路径
我用这个函数下载下来的图片都是0字节。

------解决方案--------------------
while太快了,sleep一下
------解决方案--------------------
先去一两张看看有什么,而且你的代码里没有输出 getImage()的结果啊.
PHP code
    $result = mysql_query("SELECT itemid, thumb FROM table LIMIT 0 , 1");    while($row = mysql_fetch_array($result)) {    echo getImage($row["thumb"],"")."<br>";    echo $row["itemid"]."输出成功<br>";     }<br><font color="#e78608">------解决方案--------------------</font><br>直接file_get_content file_put_content<div class="clear">
                 
              
              
        
            </div>
登录后复制
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板