2013-04-20 94 views
0

我得到一个错误,我无法弄清楚,我正在做的是我有一个字符串或一堆网址,我把它们放入一个数组,然后循环数组并调整和上传图像,但我得到这个错误。任何帮助将非常感谢!PHP获取文件内容

错误

file_get_contents(http://a513.phobos.apple.com/us/r1000/094/Purple/v4/d4/e4/02/d4e402a3-a485-4d4c-cf9b-90b0af391626/mzl.wbbwbbab.png) 
[function.file-get-contents]: failed to open stream: HTTP request failed! 
HTTP/1.0 400 Bad Request in "My File" on line 53 

PHP

include("picture-resize.php"); 

    $image = $_POST['thumbnail']; 
    $slug = $_POST['slug']; 
    $images = $_POST['screenshots']; 
    $list = explode(",", $images);  
    $listlength = count($list); 

    $i = 0; 

    $image = $_POST['thumbnail']; 

    $path = parse_url($image, PHP_URL_PATH); 

    $filename = $slug.'-'.$i; 

    $extension = pathinfo($path, PATHINFO_EXTENSION); 

    $file = $filename.'.'.$extension; 

    file_put_contents('../tmp/' . $file, file_get_contents($image)); 

    $picture = new pic_resize(); 

    $picture->load('../tmp/'.$file); 

    $picture->resizeToWidth(125); 

    $picture->save('../images/125x125/'.$file, $picture->image_type); 

    unlink('../tmp/'.$file); 

    $thumbnail = $file; 

    $new_list = array(); 

    while($listlength > $i) { 

     $path = parse_url($list[$i], PHP_URL_PATH); 

     $extension = pathinfo($path, PATHINFO_EXTENSION); 

     $file = $filename.'.'.$extension; 

     file_put_contents('../tmp/' . $file, file_get_contents($list[$i])); 

     $picture = new pic_resize(); 

     $picture->load('../tmp/'.$file); 

     $picture->resizeToWidth(640); 

     $picture->save('../images/640x320/'.$file, $picture->image_type); 

     $picture->resizeToWidth(310); 

     $picture->save('../images/310x205/'.$file, $picture->image_type); 

     unlink('../tmp/'.$file); 

     array_push($new_list, $file); 

     $i++; 
    } 
    $screenshots = implode($new_list, ','); 

回答

0
$a = file_get_contents("http://a513.phobos.apple.com/us/r1000/094/Purple/v4/d4/e4/02/d4e402a3-a485-4d4c-cf9b-90b0af391626/mzl.wbbwbbab.png"); 
echo strlen($a); 

对我的作品好。它可能会导致您的环境出错(防火墙,wiruses,ISP修改HTTP请求等)。尝试粘贴在浏览器中点击此链接:

http://a513.phobos.apple.com/us/r1000/094/Purple/v4/d4/e4/02/d4e402a3-a485-4d4c-cf9b-90b0af391626/mzl.wbbwbbab.png

你看到的图像或错误?您可以尝试使用其他工具下载映像,例如在unix ot php cUrl上的wget命令。请注意,这不是代码错误 - 这是我的服务器响应与HTTP代码400 - 错误的请求,所以你连接到图像服务器,但由file_get_contents产生的HTTP GET请求无效。