利用PHP将图片转换成base64编码的实现方法


Posted in PHP onSeptember 13, 2016

先来说一下为什么我们要对图片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和ACCESS写聊天室(十)
Oct 09 PHP
php中长文章分页显示实现代码
Sep 29 PHP
探讨:如何使用PHP实现计算两个日期间隔的年、月、周、日数
Jun 13 PHP
ThinkPHP3.1新特性之字段合法性检测详解
Jun 19 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(七)
Jun 23 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
Aug 23 PHP
PHP中的Streams详细介绍
Nov 12 PHP
判断、添加和删除WordPress置顶文章的相关PHP函数小结
Dec 10 PHP
简介PHP的Yii框架中缓存的一些高级用法
Mar 29 PHP
PHP后台微信支付和支付宝支付开发
Apr 28 PHP
Windows平台实现PHP连接SQL Server2008的方法
Jul 26 PHP
PHP5.6读写excel表格文件操作示例
Feb 26 PHP
PHP将URL转换成短网址的算法分享
Sep 13 #PHP
PHP使用FFmpeg获取视频播放总时长与码率等信息
Sep 13 #PHP
php微信公众平台开发之微信群发信息
Sep 13 #PHP
PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)
Sep 11 #PHP
PHP入门教程之面向对象的特性分析(继承,多态,接口,抽象类,抽象方法等)
Sep 11 #PHP
PHP入门教程之面向对象基本概念实例分析
Sep 11 #PHP
PHP入门教程之PHP操作MySQL的方法分析
Sep 11 #PHP
You might like
浅析Mysql 数据回滚错误的解决方法
2013/08/05 PHP
phpphp图片采集后按原路径保存图片示例
2014/02/18 PHP
PHP比较运算符的详细介绍
2015/09/29 PHP
深入理解PHP原理之执行周期分析
2016/06/01 PHP
PHP三种方式实现链式操作详解
2017/01/21 PHP
JavaScript事件列表解说
2006/12/22 Javascript
Javascript miscellanea -display data real time, using window.status
2007/01/09 Javascript
JQuery实现的在新窗口打开链接的方法小结
2010/04/22 Javascript
Jquery Ajax请求代码(2)
2011/01/07 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
easyui 中的datagrid跨页勾选问题的实现方法
2017/01/18 Javascript
Web 开发中Ajax的Session 超时处理方法
2017/01/19 Javascript
JS实现简单表格排序操作示例
2017/10/07 Javascript
Angular实现的进度条功能示例
2018/02/18 Javascript
详解js的视频和音频采集
2018/08/09 Javascript
详解如何构建一个Angular6的第三方npm包
2018/09/07 Javascript
浅谈React之状态(State)
2018/09/19 Javascript
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
回调函数的意义以及python实现实例
2017/06/20 Python
python中Switch/Case实现的示例代码
2017/11/09 Python
Python基于列表list实现的CRUD操作功能示例
2018/01/05 Python
python修改list中所有元素类型的三种方法
2018/04/09 Python
Python使用Pickle库实现读写序列操作示例
2018/06/15 Python
python-opencv 将连续图片写成视频格式的方法
2019/01/08 Python
Python入门Anaconda和Pycharm的安装和配置详解
2019/07/16 Python
PyTorch 随机数生成占用 CPU 过高的解决方法
2020/01/13 Python
浅谈Pytorch torch.optim优化器个性化的使用
2020/02/20 Python
在python中利用dict转json按输入顺序输出内容方式
2020/02/27 Python
Django中使用Json返回数据的实现方法
2020/06/03 Python
部署Django到阿里云服务器教程示例
2020/06/03 Python
使用Python实现NBA球员数据查询小程序功能
2020/11/09 Python
英国专业美容产品在线:Mylee(从指甲到脱毛)
2020/07/06 全球购物
自我评价怎么写好呢?
2013/12/05 职场文书
学校十一活动方案
2014/02/01 职场文书
三八活动策划方案
2014/08/17 职场文书
2014年个人售房协议书
2014/10/30 职场文书