>백엔드 개발 >PHP 튜토리얼 >php下载图片出现链接被重置

php下载图片出现链接被重置

WBOY
WBOY원래의
2016-06-06 20:10:15966검색

我的代码是这样的:

<code><?php $url = $_GET['img'];  
$filename = basename($url);
$img = grabImage($url,$filename);
echo '<img  src="'.$img.'" alt="php下载图片出现链接被重置" >';
function grabImage($url,$filename){
if ($url == "") return false;
ob_start(); 
readfile($url); 
$img = ob_get_contents(); 
ob_end_clean();
$fp = @fopen($filename,"a"); 
fwrite($fp,$img);
fclose($fp); 
return $filename;
}
?>
</code>

然后访问http://test.com/?img=https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/12950259_974006612694869_608041607_n.jpg出现链接被重置,该怎么改?使用表单传递url可以正常下载。

回复内容:

我的代码是这样的:

<code><?php $url = $_GET['img'];  
$filename = basename($url);
$img = grabImage($url,$filename);
echo '<img  src="'.$img.'" alt="php下载图片出现链接被重置" >';
function grabImage($url,$filename){
if ($url == "") return false;
ob_start(); 
readfile($url); 
$img = ob_get_contents(); 
ob_end_clean();
$fp = @fopen($filename,"a"); 
fwrite($fp,$img);
fclose($fp); 
return $filename;
}
?>
</code>

然后访问http://test.com/?img=https://scontent.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/12950259_974006612694869_608041607_n.jpg出现链接被重置,该怎么改?使用表单传递url可以正常下载。

因为表单传入的参数值会进行urlencode。
因为你直接url来访问,img的参数值中有'/',没有urlencode;

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.