好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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怎么将内容转换成图片的详细内容!

查看更多关于php怎么将内容转换成图片的详细内容...

  阅读:73次