PHP ヘッダーの画像コンテンツ タイプの決定
Header() 関数を使用して Web ルートの外側から画像を表示すると、ユーザーが混乱に遭遇する可能性があります指定された Content-type: 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 中国語 Web サイトの他の関連記事を参照してください。