PHP の Base64 文字列から画像タイプを決定する
PHP で Base64 文字列としてエンコードされた画像のファイル タイプを確認することは可能ですか?残念ながら、エンコードされた文字列のみを所有すると、画像の元のファイル タイプを取得するのが困難になります。画像の種類を解読するには、画像リソースを生成する imagecreatefromstring() 関数を利用します。ただし、このリソースは PHP で特殊な表現を持っており、元の画像タイプがわかりにくくなっています。
幸いなことに、PHP FileInfo 拡張機能が解決策を提供します。この拡張機能は、base64 でエンコードされた文字列を含むバイナリ データのファイル タイプを判断する簡単な方法を提供します。その仕組みは次のとおりです。
<code class="php">$encoded_string = "...."; $imgdata = base64_decode($encoded_string); $f = finfo_open(); $mime_type = finfo_buffer($f, $imgdata, FILEINFO_MIME_TYPE);</code>
このコード スニペットは、base64 でエンコードされた文字列をデコードし、FileInfo リソースを開き、 finfo_buffer() 関数を使用してファイル タイプを取得します。結果の $mime_type 変数には、「image/jpeg」や「image/png」などのファイル タイプが含まれます。この情報を使用すると、元のファイルの種類を事前に知らなくても判断でき、画像を適切なファイルの種類として保存できます。
以上がPHPでBase64文字列から画像タイプを決定する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。