确定 PHP 标头的图像内容类型
使用 Header() 函数从 Web 根目录之外显示图像时,用户可能会遇到困惑关于指定的内容类型:image/png。然而,尽管内容类型固定,但具有各种扩展名的图像(例如, JPG、GIF)仍然可以成功显示。
要解决这种差异,动态确定正确的扩展名至关重要基于文件扩展名的图像内容类型。下面的代码片段提供了一个解决方案:
$filename = basename($file);
$file_extension = strtolower(substr(strrchr($filename,"."),1));
switch( $file_extension ) {
case "gif": $ctype="image/gif"; break;
case "png": $ctype="image/png"; break;
case "jpeg":
case "jpg": $ctype="image/jpeg"; break;
case "svg": $ctype="image/svg xml"; break;
default:
}
header('Content-type: ' . $ctype);
通过利用这种方法,代码可以根据文件扩展名识别正确的内容类型并相应地设置标头。值得注意的是,JPG 文件的正确内容类型是 image/jpeg,应该使用它来代替之前令人困惑的 image/png。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3