资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

php如何将内容转换成图片

这篇文章主要介绍php如何将内容转换成图片,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、虚拟主机、营销软件、网站建设、吉首网站维护、网站推广。

php将内容转换成图片的方法:1、通过正则提取出dataurl存储所需的数据,然后直接展示在页面上;2、用substr和strpos方法保存图片到本地。

本文操作环境:windows7系统、PHP7.1版,DELL G3电脑

php怎么将内容转换成图片?PHP 将dataurl转成图片image方法

使用canvas 生成的图片,是使用dataurl的,php无法直接通过file_put_contents方法保存到本地电脑,需要做一下转码。

图片dataurl 如下

$imgstr = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';

方法一:

通过正则提取出dataurl存储所需的数据,然后直接展示在页面上

         if 
          (!preg_match(
         '/data:([^;]*);base64,(.*)/'
         , 
         $imgstr
         , 
         $matches
         )) {
        
 
           
         die
         (
         "error"
         );
        
 
         }
        
 
           
        
 
         $content 
          = 
         base64_decode
         (
         $matches
         [2]);
        
 
         header(
         'Content-Type: '
         .
         $matches
         [1]);
        
 
         header(
         'Content-Length: '
         .
         strlen
         (
         $content
         ));
        
 
           
        
 
         echo 
          $content
         ;
        
 
         die
         ;

方法二:

如果仅仅是想保存图片到本地,可以用substr 和 strpos 方法

       $imgdata 
          = 
         substr
         (
         $imgstr
         ,
         strpos
         (
         $imgstr
         ,
         ","
         ) + 1);
        
 
         $decodedData 
          = 
         base64_decode
         (
         $imgdata
         );
        
 
         file_put_contents
         (
         '11.png'
         ,
         $decodedData 
          );

以上是“php如何将内容转换成图片”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


本文题目:php如何将内容转换成图片
当前网址:http://cdkjz.cn/article/gjcocc.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220