0

我有以下代码给自己邮寄一张图片

$img = file_get_contents("http://www.cpc.ncep.noaa.gov/products/predictions/threats/hazards_d3_7_contours.png");
file_put_contents("hazards_d3_7_contours.png",$img);

$message = $img;

$headers = "From: me";
$headers = "Content-type: image/gif";
$subject = '3-7 Weather Hazard Forecast';
$to = 'me@gmail.com';
mail($to, $subject, $message, $headers);

但是我得到的图像被破坏了,为什么?

4

3 回答 3

0

该图像具有文件扩展名.png,但您将其发送为image/gif. 也许这与它有关?

于 2013-05-26T01:39:54.670 回答
0

即使image/gif从远程服务器检索到的图像是image/png. from然后,您使用该值覆盖标题。你正在寻找这样的东西:

$headers   = [];
$headers[] = 'From: me';
$headers[] = 'Content-type: image/png';

$subject = '3-7 Weather Hazard Forecast';
$to      = 'me@gmail.com';

mail($to, $subject, $message, implode(PHP_EOL, $headers));
于 2013-05-26T01:43:56.527 回答
-1

这对我有用:

public function store()
{

    $file = file_get_contents($_FILES['myfile']['tmp_name']);
    file_put_contents("img/" . $_FILES['myfile']['name'], $file);

    return $_FILES['myfile'];

}
于 2019-03-18T09:51:41.423 回答