php怎么将内容转换成图片

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

php怎么将内容转换成图片

 

 本文操作环境: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存储所需的数据,然后直接展示在页面上

  1 if
  2 
  3  (!preg_match(
  4 
  5 ‘/data:([^;]*);base64,(.*)/‘
  6 
  7 ,
  8 
  9 $imgstr
 10 
 11 ,
 12 
 13 $matches
 14 
 15 )) {
 16 
 17  
 18 
 19  
 20 
 21    
 22 
 23 die
 24 
 25 (
 26 
 27 "error"
 28 
 29 );
 30 
 31  
 32 
 33  
 34 
 35 }
 36 
 37  
 38 
 39  
 40 
 41    
 42 
 43  
 44 
 45  
 46 
 47 $content
 48 
 49  =
 50 
 51 base64_decode
 52 
 53 (
 54 
 55 $matches
 56 
 57 [2]);
 58 
 59  
 60 
 61  
 62 
 63 header(
 64 
 65 ‘Content-Type: ‘
 66 
 67 .
 68 
 69 $matches
 70 
 71 [1]);
 72 
 73  
 74 
 75  
 76 
 77 header(
 78 
 79 ‘Content-Length: ‘
 80 
 81 .
 82 
 83 strlen
 84 
 85 (
 86 
 87 $content
 88 
 89 ));
 90 
 91  
 92 
 93  
 94 
 95    
 96 
 97  
 98 
 99  
100 
101 echo
102 
103  $content
104 
105 ;
106 
107  
108 
109  
110 
111 die
112 
113 ;

方法二:

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

 1 $imgdata
 2 
 3    =
 4 
 5   substr
 6 
 7   (
 8 
 9   $imgstr
10 
11   ,
12 
13   strpos
14 
15   (
16 
17   $imgstr
18 
19   ,
20 
21   ","
22 
23   ) + 1);
24 
25   
26 
27  
28 
29   $decodedData
30 
31    =
32 
33   base64_decode
34 
35   (
36 
37   $imgdata
38 
39   );
40 
41   
42 
43  
44 
45   file_put_contents
46 
47   (
48 
49   ‘11.png‘
50 
51   ,
52 
53   $decodedData
54 
55    );

以上就是php怎么将内容转换成图片的详细内容。(拼多多培训

php怎么将内容转换成图片

上一篇:laykefu 在线客服php代码


下一篇:CSS多种方式实现元素水平垂直居中