ホームページ  >  記事  >  バックエンド開発  >  Base64画像base64_decodeのPHP保存に関する問題

Base64画像base64_decodeのPHP保存に関する問題

黄舟
黄舟オリジナル
2017-09-28 09:15:591798ブラウズ

PHP は Base64 を非常に適切にサポートしており、画像の Base64 エンコードとデコードを担当する組み込みのbase64_encode とbase64_decode を備えています。

エンコードに関しては、画像ストリームを読み取り、base64_encode を使用してエンコードするだけです。

デコードは少し面倒です。その理由は、画像を Base64 文字列にエンコードした後、これらの文字 data:image/png;base64 が、本来は Base64 認識に使用されるエンコードに追加されるためです。ただし、これを PHP に直接入力し、base64_decode 関数を使用してデコードすると、最終的に保存された画像ファイルの形式が破損します。この解決策は、最初にこの文字列を削除することです:


$base64_string= explode(',', $base64_string); //截取data:image/png;base64, 这个逗号后的字符
$data= base64_decode($base64_string[1]);  //对截取后的字符使用base64_decode进行解码
file_put_contents($url, $data); //写入文件并保存

以上がBase64画像base64_decodeのPHP保存に関する問題の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。