網頁的圖片要呈現,使用 img src 指定圖片的路徑位置外,還可以將圖片內容讀進來後,指定型態,使用 Base64 將 binary 轉換成文字,直接放在裡面,要怎麼做呢?
PHP 圖片轉成 Base64 image
Base64 的 img src 寫法:
- <img src="data:image/{IMAGE_TYPE};base64,{XXX==}">
- IMAGE_TYPE:jpg / png ...
- XXX==:圖片 base64 後的內容
PHP 將圖片轉成 Base64 Image 的範例程式
<?php $image_path = '/tmp/example.jpg'; $base64_image = base64_encode(file_get_contents($image_path)); // format: data:{mime};base64,{base64_image}; $image_data = sprintf('data:%s;base64,%s', mime_content_type($image_path), $base64_image); printf('<img src="%s">', $image_data); ?>
輸出格式
- <img src="data:image/png;base64,AAABBBCCC==">