先來說為什麼我們要對圖片base64編碼
base64是目前網路上最常見的傳輸8Bit位元組代碼的編碼方式其中之一。 base64主要不是加密,它主要的用途是把某些二進制數轉成普通字元用於網路傳輸。由於這些二進位字符在傳輸協定中屬於控製字符,不能直接傳送,所以需要轉換一下。雖然圖片可能直接傳輸,但是我們也可以將它變成字串直接放在原始碼裡,而不需要瀏覽器在讀取到原始碼後再從伺服器上下載。
如何使用PHP對圖片進行base64解碼輸出
<?php $img = 'test.jpg'; $base64_img = base64EncodeImage($img); echo '<img src="' . $base64_img . '" />'; function base64EncodeImage ($image_file) { $base64_image = ''; $image_info = getimagesize($image_file); $image_data = fread(fopen($image_file, 'r'), filesize($image_file)); $base64_image = 'data:' . $image_info['mime'] . ';base64,' . chunk_split(base64_encode($image_data)); return $base64_image; } ?>
總結
透過上面的方法轉換後得到的base64編碼字串,可以存放到資料庫中,需要時可以直接從資料庫中讀取,減少存取圖片時的請求數量。這個方法已經包含進MiniFramework的全域函數庫中了。以上就是這篇文章的全部內容了,希望對本文的內容對大家的學習或工作能帶來一定的幫助,謝謝大家對PHP中文網的支持。
更多利用PHP將圖片轉換成base64編碼的實作方法相關文章請關注PHP中文網!