PHP中将图片转换为base64编码的方法

PHP中将图片转换为base64编码呢,这样可以不需要把图片保存在服务器上了只需要直接调用数据库了,下面来看处理办法.

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范.

这里我们分享一个将图片转换为base64编码格式的方法:

  1. <?php
  2. $img = 'test.jpg';
  3. $base64_img = base64EncodeImage($img);
  4. echo '<img src="' . $base64_img . '" />';
  5. //phpfensi.com
  6. function base64EncodeImage ($image_file) {
  7. $base64_image = '';
  8. $image_info = getimagesize($image_file);
  9. $image_data = fread(fopen($image_file, 'r'), filesize($image_file));
  10. $base64_image = 'data:' . $image_info['mime'] . ';base64,' . chunk_split(base64_encode($image_data));
  11. return $base64_image;
  12. }
  13. ?>

通过上面的方法转换后得到的base64编码字符串,可以存放到数据库中,需要时可以直接从数据库中读取,减少访问图片时的请求数量.

另:这个方法已经包含进MiniFramework的全局函数库中了.