ホームページ > バックエンド開発 > PHPチュートリアル > PHPでBase64エンコーディングをローカルファイルに保存するにはどうすればよいですか?

PHPでBase64エンコーディングをローカルファイルに保存するにはどうすればよいですか?

WBOY
リリース: 2016-07-06 13:53:39
オリジナル
2353 人が閲覧しました

  1. C++ を使用して画像をローカルで Base64 エンコードし、PHP で Base64_decode デコードした後、保存後の画像が正しくなりません。 16 進エディタを使用してソース ファイル (ローカル ソース ファイル イメージ) を表示および比較すると、保存後に 0d--carriage return 文字が欠落していることがわかります。

  2. このプロセス中に発生する問題は、送信後_POST['data']の後に取り出されたデータが、以前のbase64エンコードされたデータと比較されることです。これを元のデータに戻すには、phpのstr_replace(...)を使用します。問題がないことが確認できます。

  3. $img = base64_decode(...)解码后,返回的strlen($img)的长度和源文件的长度是一样的。无论是用for(...) fwrite(...);还是file_put_contents(...)の後、すべてのバイトが失われます0d

解決予定: タイトルを参照

解決済み: ファイルストリームを開くときに問題が発生しましたが、プロセスは正しかったです

返信内容:

  1. C++ を使用して画像をローカルで Base64 エンコードし、PHP で Base64_decode デコードした後、保存後の画像が正しくなりません。 16 進エディタを使用してソース ファイル (ローカル ソース ファイル イメージ) を表示および比較すると、保存後に 0d--carriage return 文字が欠落していることがわかります。

  2. このプロセス中に発生する問題は、送信後_POST['data']の後に取り出されたデータが、以前のbase64エンコードされたデータと比較されることです。これを元のデータに戻すには、phpのstr_replace(...)を使用します。問題がないことが確認できます。

  3. $img = base64_decode(...)解码后,返回的strlen($img)的长度和源文件的长度是一样的。无论是用for(...) fwrite(...);还是file_put_contents(...)の後、すべてのバイトが失われます0d

解決予定: タイトルを参照

解決済み: ファイルストリームを開くときに問題が発生しましたが、プロセスは正しかったです

と同様に、この画像を Web 上に直接出力して、正常に表示できるかどうかを確認できます。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート