首页 >后端开发 >PHP问题 >PHP如何实现将文件转二进制输出

PHP如何实现将文件转二进制输出

藏色散人
藏色散人原创
2020-07-28 10:00:585586浏览

PHP将文件转二进制的方法:首先设置“header( "Content-type: image/jpeg");”;然后通过fopen和fread函数打开并读取文件;最后将图片文件以二进制流的形式输出到客户端即可。

PHP如何实现将文件转二进制输出

推荐:《PHP教程

php将文件转换成二进制输出

header( "Content-type: image/jpeg");
$PSize = filesize('1.jpg');
$picturedata = fread(fopen('1.jpg', "r"), $PSize);
echo $picturedata;

就这么几句话,就将图片以二进制流的形式输出到客户端了,和打开一张图片没有任何区别,需要注意的是,发送的header要根据具体情况而定,不一定都是image/jpeg。JPG的是它,但PNG的就是image/png.不同的图片输出不同的头部。

用途:

OSS默认支持上传文件流,但input表单默认是返回一个文件:

 /**
    * 支持文件类型上传到OSS
    */
    public static  function uploadFile($filename, $ext = 'jpg', $type = Enum_OSS_File_Type::IMG) {
        $content = static::file2content($filename);
        return static::upload($content, $ext, $type);
    }
    
    public static  function file2content($filename) {
        return fread(fopen($filename, 'r'), filesize($filename));
    }

以上是PHP如何实现将文件转二进制输出的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn