欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php 中把一个array(255,11,22,2,0.)转换成图片输出

程序员文章站 2024-01-29 14:38:28
...
从第三方的接口中获取得到一个图片的二进制数组类似如下结果:
$img_data = array(255,11,2,0,112,4,...);

请教大家怎么把上述的数组转换为图片输出?


回复讨论(解决方案)

这个数据不正常吧

如果这的数图片数据的话,则

echo join('', array_map('chr', $img_data));

如果这的数图片数据的话,则

echo join('', array_map('chr', $img_data));

#2 正解,一会结贴给分;
不过我接触PHP不是很久,不是很明其中的原理,@xuzuning 斑竹能大致讲解下不?

上面的数据相当于就是:
255 11 22 ... ..
我直接设置header输出后就是一个图片了。

array_map 让数组的每一个元素都执行指定的函数
array_map('chr', $img_data) 就是让 $img_data 的每一个值都执行 chr 函数,将值转换成字符
join 函数将数组连接成字符串