我在 php 中动态生成图像。图像具有固定名称。我想要一个按钮或超链接并单击该按钮,用户应该能够导出图像而不是右键单击并保存为图像选项。问题是,如果是 excel、pdf 或 doc 文件,我可以指定文件的路径,浏览器会自动要求打开或保存选项,但对于图像,它会在单独的窗口中打开它们。我想要相同的对话框来保存其他文件如 excel、pdf 的图像。请帮助我。
谢谢
您可以将标题设置为强制下载(对于 PHP):
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=$file");
header("Content-Type: image/png");
然后就可以读取文件了
readfile($file);
如果您使用的是 Apache,您可以使用 .htaccess 强制下载图像,或者使用标头标签直接通过 php
PHP 示例
$file = "PATH TO FILE" ;
$fileName = basename($file);
$fileSize = filesize($file);
set_time_limit(0);
header("Pragma: public");
header("Expires: 0"); // Cache Options
header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); // Cache Options
header("Content-type: application/octet-stream");
header("Content-Disposition: filename=\" " . $fileName ."\"");
header("Content-length: $fileSize");
readfile($file);