php实现 data url的图片生成与保存 原创

原创  更新时间:2016年12月04日 15:23:03   原创 投稿:hebedich  
本文给大家介绍的是使用php实现的data url格式图片的生成与保存,非常的简单实用,有需要的小伙伴可以参考下

Data URL是在本地直接绘制图片,不是从服务器加载,所以节省了HTTP连接,起到加速网页的作用。

语法:

data:image/jpg;    声明数据协议及类型名称
base64,               编码形式为base64
/9j/4AAQSkZ……    base64编码结果

Data URL的生成方法(php):

<?php  $img_file = file_get_contents("https://www.jb51.net/img/logo_s2.png");  echo base64_encode($img_file);

注意:本方法适合于小图片,大图片就不要考虑了,另外IE8以下浏览器不支持这种方法。用这种方法会加重客户端的CPU和内存负担,总之有利有弊。

那么我们如何把网站上的Data URL格式的图片转存成实际图片呢?

其实很简单,我们把图片内容就是src部分传到后台,保存即可。

$img_content // 图片内容
if (preg_match('/^(data:\s*image\/(\w+);base64,)/', $img_content, $result)){
 $type = $result[2];
 $new_file = "./test.{$type}";
 if (file_put_contents($new_file, base64_decode(str_replace($result[1], '', $img_content)))){
  echo '新文件保存成功:', $new_file;
 }
}

相关文章

  • 使用PHP操作ElasticSearch搜索引擎详解

    使用PHP操作ElasticSearch搜索引擎详解

    ElasticSearch是一个基于Lucene的开源搜索引擎,它提供了强大的全文搜索和分析功能,本文将深入探讨如何使用PHP操作ElasticSearch搜索引擎,包括安装ElasticSearch、使用ElasticSearch PHP客户端库进行索引管理和搜索操作等,需要的朋友可以参考下
    2024-04-04
  • PHP请求远程地址设置超时时间的解决方法

    PHP请求远程地址设置超时时间的解决方法

    下面小编就为大家带来一篇PHP请求远程地址设置超时时间的解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • php实现上传图片文件代码

    php实现上传图片文件代码

    在PHP程序开发中,文件上传是一个使用非常普遍的功能,也是PHP程序员的必备技能之一。值得高兴的是,在PHP中实现文件上传功能要比在Java、C#等语言中简单得多。下面我们结合具体的代码实例来详细介绍如何通过PHP实现文件上传和多文件上传功能。
    2015-07-07
  • php5.2时间相差8小时

    php5.2时间相差8小时

    php5.2时间相差8小时...
    2007-01-01
  • PHP读MYSQL中文乱码的快速解决方法

    PHP读MYSQL中文乱码的快速解决方法

    下面小编就为大家带来一篇PHP读MYSQL中文乱码的快速解决方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • php查询whois信息的方法

    php查询whois信息的方法

    这篇文章主要介绍了php查询whois信息的方法,涉及php域名查询的相关技巧,需要的朋友可以参考下
    2015-06-06
  • 关于session在PHP5的配置文件中的详细设置参数说明

    关于session在PHP5的配置文件中的详细设置参数说明

    关于session在PHP5的配置文件中的详细设置参数说明,需要的朋友可以参考下。
    2011-04-04
  • PHP实现的栈数据结构示例【入栈、出栈、遍历栈】

    PHP实现的栈数据结构示例【入栈、出栈、遍历栈】

    这篇文章主要介绍了PHP实现的栈数据结构,结合实例形式分析了php定义栈及入栈、出栈、遍历栈等相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • PHP利用func_get_args和func_num_args函数实现函数重载实例

    PHP利用func_get_args和func_num_args函数实现函数重载实例

    这篇文章主要介绍了PHP利用func_get_args和func_num_args函数实现函数重载的方法,实例展示了PHP实现重载的具体方法,是非常实用的技巧,需要的朋友可以参考下
    2014-11-11
  • PHP iconv 函数转gb2312的bug解决方法

    PHP iconv 函数转gb2312的bug解决方法

    之前写过一篇解决xajax库中文乱码的问题,说到可以用 iconv( "UTF-8", "gb2312" , $FormValues['a']) 来转换,最近发现更好的写法应该是。
    2009-10-10

最新评论