php实现图片以base64显示的方法


Posted in PHP onOctober 13, 2016

本文实例讲述了php实现图片以base64显示的方法。分享给大家供大家参考,具体如下:

这里实现图片以字符串形式保存到网页,从而不需要再加载图片的功能。

这是在RFC2397中定义的Data URI scheme,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入,比如上面那串字符,其实是一张图片,将这些字符复制黏贴到火狐的地址栏中并转到,就能看到了。

在上面的Data URI中,data表示取得数据的协定名称,image/jpeg是数据类型名称,base64是数据的编码方法,逗号后面就是这个image/jpeg文件base64编码后的数据。

目前Data URI scheme支持的类型有:

data:text/plain,文本数据
data:text/html,HTML代码
data:text/html;base64,base64编码的HTML代码
data:text/css,CSS代码
data:text/css;base64,base64编码的CSS代码
data:text/javascript,javascript代码
data:text/javascript;base64,base64编码的Javascript代码
data:image/gif;base64,base64编码的gif图片数据
data:image/png;base64,base64编码的png图片数据
data:image/jpeg;base64,base64编码的jpeg图片数据
data:image/x-icon;base64,base64编码的icon图片数据

php代码如下:

$img_file = 'https://img.alicdn.com/bao/uploaded/TB1eaiELpXXXXcPXpXXSutbFXXX.jpg';
$img_info = getimagesize($img_file);
$img_src = "data:{$img_info['mime']};base64," . base64_encode(file_get_contents($img_file));
exit("<img src='{$img_src}' />");
PHP 相关文章推荐
PHP中实现图片的锐化
Oct 09 PHP
PHP实现分页的一个示例
Oct 09 PHP
用Simple Excel导出xls实现方法
Dec 06 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
Sep 09 PHP
从wamp到xampp的升级之路
Apr 08 PHP
php外部执行命令函数用法小结
Oct 11 PHP
通过源码解析Laravel的依赖注入
Jan 22 PHP
php+Ajax处理xml与json格式数据的方法示例
Mar 04 PHP
Laravel 中创建 Zip 压缩文件并提供下载的实现方法
Apr 02 PHP
使用composer 安装 laravel框架的方法图文详解
Aug 02 PHP
tp5框架基于Ajax实现列表无刷新排序功能示例
Feb 10 PHP
实例化php类时传参的方法分析
Jun 05 PHP
php实现将base64格式图片保存在指定目录的方法
Oct 13 #PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
Oct 13 #PHP
Mac版PhpStorm之XAMPP整合apache服务器配置的图文教程详解
Oct 13 #PHP
php结合ajax实现手机发红包的案例
Oct 13 #PHP
php加密解密字符串示例
Oct 13 #PHP
用php和jQuery来实现“顶”和“踩”的投票功能
Oct 13 #PHP
php is_writable判断文件是否可写实例代码
Oct 13 #PHP
You might like
PHP 时间日期操作实战
2011/08/26 PHP
php中url传递中文字符,特殊危险字符的解决方法
2013/08/17 PHP
ThinkPHP查询中的魔术方法简述
2014/06/25 PHP
PHP实现搜索地理位置及计算两点地理位置间距离的实例
2016/01/08 PHP
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
2019/12/11 PHP
JavaScript 权威指南(第四版) 读书笔记
2009/08/11 Javascript
SlideView 图片滑动(扩展/收缩)展示效果
2010/08/01 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
原生javascript兼容性测试实例
2013/07/01 Javascript
JS验证IP,子网掩码,网关和MAC的方法
2015/07/02 Javascript
jQuery中Ajax全局事件引用方式及各个事件(全局/局部)执行顺序
2016/06/02 Javascript
IOS中safari下的select下拉菜单文字过长不换行的解决方法
2016/09/26 Javascript
利用yarn实现一个webpack+react种子
2016/10/25 Javascript
JavaScript学习笔记--常用的互动方法
2016/12/07 Javascript
NodeJS学习笔记之Module的简介
2017/03/24 NodeJs
jQuery选择器中的特殊符号处理方法
2017/09/08 jQuery
判断滚动条滑到底部触发事件(实例讲解)
2017/11/15 Javascript
layui table去掉右侧滑动条的实现方法
2019/09/05 Javascript
[37:45]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS Orenda
2014/05/22 DOTA
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
[00:35]2016完美“圣”典风云人物:冷冷宣传片
2016/12/08 DOTA
[11:42]2018DOTA2国际邀请赛寻真——OG卷土重来
2018/08/17 DOTA
Python的Django框架中的数据库配置指南
2015/07/17 Python
Python中格式化format()方法详解
2017/04/01 Python
Python中创建二维数组
2018/10/17 Python
Python Django实现layui风格+django分页功能的例子
2019/08/29 Python
Python数据库小程序源代码
2019/09/15 Python
Python中的延迟绑定原理详解
2019/10/11 Python
Python+Kepler.gl实现时间轮播地图过程解析
2020/07/20 Python
Python 的 __str__ 和 __repr__ 方法对比
2020/09/02 Python
6PM官网:折扣鞋、服装及配饰
2018/08/03 全球购物
程序员求职信
2014/04/16 职场文书
社区志愿者活动方案
2014/08/18 职场文书
在校大学生自我评价范文
2014/09/12 职场文书
法定代表人授权委托书格式
2014/10/14 职场文书
使用Docker容器部署rocketmq单机的全过程
2022/04/03 Servers