作成日:2019-10-23, 更新日:2019-10-23
基本
単純に手持ちの画像をCSSに埋め込めるようにテキストデータに変換したい。そのための内容
1.元の画像をテキストデータに変換(base64_encode())
2.mimeタイプなど、prefix(?)を追加
サンプル
<?php $url = '〇〇〇'; $data = file_get_contents($url); // 埋め込みデータ用にbase64エンコード $base64_data = base64_encode($data); // mime_typeを取得するためにいったん、デコードする(デコードしないと余計な情報で出力されてしまう) $tmp = base64_decode($base64_data); // mime_typeを取得(PHP5.3.0以上) $mime_type = finfo_buffer(finfo_open(), $tmp, FILEINFO_MIME_TYPE); $base64_pre = 'data:' . $mime_type . ';base64,'; ?> <textarea class="form-control"><?php echo $base64_pre . $base64_data; ?></textarea> <img src="<?php echo $base64_pre . $base64_data; ?>">
DBに保存するとき
・上記の「$base64_pre . $base64_data」の内容を保存してやる。
※base64エンコードしたヤツを元のようなファイルにしたいなら「base64_decode()」した内容を「file_put_contents()」とかで出力で大丈夫(・・・だと思う)