确定 PHP 标头的图像内容类型
使用 Header() 函数显示来自 Web 根目录之外的图像时,用户可能会遇到困惑关于指定的内容类型:image/png。然而,尽管内容类型固定,但具有各种扩展名的图像(例如, JPG、GIF)仍然可以成功显示。
要解决这种差异,动态确定正确的扩展名至关重要基于文件扩展名的图像内容类型。以下代码片段提供了一个解决方案:
<code class="php">$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);</code>
通过利用此方法,代码可以根据文件扩展名识别正确的内容类型并相应地设置标头。值得注意的是,JPG 文件的正确内容类型是 image/jpeg,应该使用它来代替之前令人困惑的 image/png。
以上是如何确定 PHP 标头的正确图像内容类型?的详细内容。更多信息请关注PHP中文网其他相关文章!