php图片转为二进制数据的方法
Song •
2472 次浏览 •
0个评论 •
2023年10月23日
在 mysql 数据库中是无法直接存放图片文件的,但如果将图片通过 php 程序转换成二进制数据就可以很轻松的存放到数据库中了。那么这篇文章就说一下,利用 php 将图片文件转换二进制数据的方法。
php 图片转二进制数据的方法
方法1:
php fread() 函数读取打开的文件(二进制的方法)
示例代码:
<?php
$img = 'feiniaomy.jpg'; // 图片的存放在地址
$fp = fopen($img, 'rb'); // 打开图片
$content = fread($fp, filesize($img));//二进制数据
echo $content; //输出二进制数据
//这里输出到浏览器的是乱码
?>方法二:
php file_get_contents() 读取图片,转为二进制数据
示例代码:
<?php
$img = 'xx.jpg'; //图片的地址
echo file_get_contents($img);
//这里输出到浏览器的是乱码
?>php 输出二进制图片的方法
php 向浏览器输出二制的图片,只需要加个 header 头来声明一下图片类型即可!
例:
<?php
//声明为图片类型,发送header头
header( "Content-type: image/jpeg");
$img = 'xx.jpg';
$size = filesize($img );
$fp= fopen($img, 'r');
$data = fread($fp, $size);//二进制数据
echo $data; //输出图片的二进制数据
?>注:
发送的 header 要根据具体情况而定,不一定都是image/jpeg。JPG格式的图片就是image/jpeg,但PNG格式的图片有可能需要声明为 image/png,实际应用中个人应当测试一下。
-
Ubuntu 22.04系统编译安装Nginx1.22教程 2023-09-26 -
Jquery如何监听动态创建元素的点击事件? 2023-09-08 -
所以SheetJS实现table导出数据为Excel 2023-09-05 -
ubuntu crontab设置定时任务教程以及常见命令合集 2023-08-21 -
laravel使用xlswriter实现导出10万条数据以及导出成功发送邮件 2023-07-11

laravel队列出现Failed to open stream: Too many open files