1

我只是想知道。所以我有两台电脑,其中一台安装了 xampp,另一台没有安装。(同一网络)。都是windows xp

我编写了这个脚本来测试下载文件。

<?php
$txt = "http://www.branded3.com/wp-content/uploads/2011/05/Google_Chrome1.jpg";
$img = "01.jpg";
file_put_contents($img, file_get_contents($txt));
?>

我在安装了 xampp 的计算机上运行脚本,它绝对有效。

但我在我的另一台电脑上运行它,不工作。有人可以在这个问题上帮助我吗?

4

1 回答 1

1

这是一种非常粗略的方式,您可以代理图像并提示下载。

<?php
$url = "http://www.branded3.com/wp-content/uploads/2011/05/Google_Chrome1.jpg";

//Get file
$source = file_get_contents($url);

//Image Mime types
$images = array('jpg'=>'image/jpg','png'=>'image/png','png'=>'image/png');
//Is it an image extention
if(in_array(substr($url,-3),$images)){
    $type = $images[substr($url,-3)];
}else{
    //No its somthing else
    $type = 'application/octet-stream';
}

//Set the headers
header('Content-Description: File Transfer');
header('Content-Type: '.$type);
header('Content-Disposition: attachment; filename='.basename($url));
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . sprintf("%u", strlen($source)));
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Expires: 0');
header('Pragma: public');

//echo the source
echo $source;
?>
于 2012-06-05T09:50:02.763 回答