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將文件轉換成二進制輸出 - cychai的專欄 - 博客頻道 - CSDN.NET
http://blog.csdn.net/spring21st/article/details/42077439