本文实例讲述了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代码如下:
1
2
3
4
|
$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程序设计有所帮助。