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)