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

yipeiwu_com6年前PHP代码库

本文实例讲述了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 = '/zb_users/upload/202003/ldvhafkkkii.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}' />");

PS:这里再为大家推荐几款在线图片工具供大家参考使用

图片转换为Base64编码在线工具:
http://tools.jb51.net/transcoding/img2base64

在线Email邮箱图标制作工具:
http://tools.jb51.net/email/emaillogo

在线PS图像处理工具:
http://tools.jb51.net/aideddesign/webps

在线图片格式转换(jpg/bmp/gif/png)工具:
http://tools.jb51.net/aideddesign/picext

ICO图标在线生成工具:
http://tools.jb51.net/aideddesign/ico_img

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP递归算法的详细示例分析

我们在建设一个网站的时候,程序员们首选的当属PHP语言。我们对PHP还是比较熟悉的,接下来我们将会为大家介绍一下PHP递归算法。PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PH...

关于BIG5-HKSCS的解决方法

非常苦悶地發現,原來一直困擾的HKSCS問題PHP一直也支持。只不過名稱不叫HK-SCS,叫BIG5-HKSCS。 以下是HK增補字符集的解決方案: HTML頁面設為UTF-8, 寫入數...

浅谈PHP安全防护之Web攻击

SQL注入攻击(SQL Injection) 攻击者把SQL命令插入到Web表单的输入域或页面请求的字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者...

解析php中反射的应用

一  反射的使用: 复制代码 代码如下:<?phpclass Person{ public $name; function __construct($...

PHP常量define和const的区别详解

前言 常量是一个简单的标识符。在脚本执行期间该值不能改变(除了所谓的魔术常量,他们其实不是常量)。常量默认大小写敏感。通常常量标识符总是大写的。 可以用define()函数来定义常量。...