GattsCOM

ブログ

BLOG

  1. Home
  2. Blog
  3. #ajax

Ajax LaravelやPHPでファイル保存する時Base64とかでよく忘れちゃうこと

こんちわ〜久しぶりにプログラム書いてると、久しぶりじゃなくてもよく忘れちゃうbase64の保存方法Ajaxで非同期通信してて、Laravel側(PHP)にファイルデータ渡して保存してるけど、保存したファイルが開けません問題Storage::put('ファイル名', $data);// PHPプレーンに書くならfile_put_contents('ファイル名', base64_decode($data));作ったファイルをダウンロードして、見てみるとファイルは開けません!って怒られるあれれ?って思ってあ〜そうだった。base64_decodeしてねぇや。Storage::put('ファイル名', base64_decode($data));// PHPプレーンに書くならfile_put_contents('ファイル名', base64_decode($data));ダウンロードして・・・ファイルは開けまてん!!あれぇぇえぇ〜?ってなること良くあるある。送信したファイルについてる下の呪文を取り除くのよく忘れる。data:application/pdf;base64,data:image/png;base64,ってことで、よく忘れるのはこのファイルの先頭についてる呪文を削除してからbase64_decodeして保存しないとダメってことですよね。ちゅーことで〜今回はPDFとして〜$str_rep = 'data:application/pdf;base64,';$data = base64_decode(str_replace($str_rep, '', $image_data));Storage::put($file_name.'.pdf', $data);ふぅ〜無事ダウンロードして開けました。まじで、久々に書いてたら忘れること多いなぁ・・・・

jQuery UIのAutocompleteを使ってみる

記事をもっと見る