php怎么将图片转成二进制?
php将图片转成二进制的方法:首先获取需要转换的图片;然后使用filesize()获取图片文件的大小,使用fopen()打开图片文件;最后使用fread()读取图片文件,将图片转成二进制数据。
推荐:《PHP视频教程》
php将图片转成二进制
header( "Content-type: image/jpeg"); $img = '1.jpg'; $PSize = filesize($img ); $fp= fopen($img, 'rb'); $picturedata = fread($fp, $PSize);//二进制数据 echo $picturedata;
就这么简单几行代码,就将图片以二进制流的形式输出到客户端了,和打开一张图片没有任何区别。
这里需要注意的是,发送的header要根据具体情况而定,不一定都是image/jpeg。JPG的就是image/jpeg,但PNG的就是image/png.不同类型的图片输出不同的头部。
说明:
-
filesize() 函数返回指定文件的大小。如果成功,该函数返回文件大小的字节数。如果失败,则返回 FALSE。
-
fopen() 函数打开文件或者 URL。如果打开失败,本函数返回 FALSE。
-
fread() 函数读取文件(可安全用于二进制文件)。
语法:
fread(file,length)