我有一个示例代码:
使用imageData=iVBORw0KGgoAAAANS...AAAAAElFTkSuQmCC
$imgData = $_REQUEST['imageData'];
$data = base64_decode($imgData);
$im = imagecreatefromstring($data);
if($im !== false) {
header('Content-Type: image/png');
imagepng($im, 'test.png');
imagedestroy($im);
echo 'Success !!!';
} else {
echo 'Failer ???';
}
如何将图像保存到我的电脑,而不是保存在网站上?
答案 0 :(得分:0)
如果你这样做:
imagepng($im, 'test.png');
您告诉imagepng()
生成一个png文件并使用您提供的名称保存它。
如果您这样做:
imagepng($im);
它将生成PNG图像到输出(发送到客户端)。
你基本上只需要它,并删除echo
,你不应该发送任何图像数据。
如果您想强行下载,请使用:
header('Content-Type: image/png');
header('Content-Disposition: attachment; filename="downloadme.png"');
imagepng($im);
答案 1 :(得分:0)
如何将图像保存到我的电脑,而不是保存在网站上?
使用标题提示下载。
<?php
$imgData = $_REQUEST['imageData'];
$data = base64_decode($imgData);
$im = imagecreatefromstring($data);
if($im !== false) {
// set the headers, to trigger a download
header("Pragma: public");
header("Expires: -1");
header("Cache-Control: public, must-revalidate, post-check=0, pre-check=0");
header('Content-Disposition: attachment; filename="image.png"');
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
} else {
echo 'Failer ???';
}
?>