You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP生成JPEG图片在Chrome中默认存为JFIF,如何改为JPG?

解决Chrome右键下载PHP生成图片默认存为jfif的问题

问题原因

Chrome处理动态生成的图片时,若未明确指定文件名,会依据image/jpeg的MIME类型默认使用jfif作为后缀;而静态jpg文件因URL包含文件名,能被正常识别为jpg格式。

修改方案

在输出图片前添加Content-Disposition响应头,明确指定带.jpg后缀的文件名,即可让Chrome默认以jpg格式保存图片。

GD扩展修改代码

header('Content-Type: image/jpeg');
// 指定默认保存文件名,后缀为jpg
header('Content-Disposition: inline; filename="custom.jpg"');
imagejpeg($source);

Imagick扩展修改代码

$img = new Imagick($source);
$img->setImageFormat("jpeg");
header('Content-Type: image/'.$img->getImageFormat());
// 指定默认保存文件名,后缀为jpg
header('Content-Disposition: inline; filename="custom.jpg"');
echo $img->getImageBlob();

说明

  • inline参数确保图片在浏览器内直接显示,而非强制下载;filename则定义了浏览器默认的保存文件名。
  • 你可以将custom.jpg替换为任意自定义文件名,只要后缀保持为.jpg即可。

内容的提问来源于stack exchange,提问作者Se7enDays

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 11:10:48