在 mysql 數據庫中是無法直接存放圖片文件的,但如果將圖片通過 php 程序轉換成二進制數據就可以很輕松的存放到數據庫中了。那么這篇文章就說一下,利用 php 將圖片文件轉換二進制數據的方法。

php 圖片轉二進制數據的方法

方法1:

国产视频appphp fread() 函數讀取打開的文件(二進制的方法) 

示例代碼:

<?php
$img  = 'feiniaomy.jpg'; // 圖片的存放在地址
$fp   = fopen($img, 'rb'); // 打開圖片
$content = fread($fp, filesize($img));//二進制數據
echo $content; //輸出二進制數據
//這里輸出到瀏覽器的是亂碼
?>

方法二:

国产视频appphp file_get_contents() 讀取圖片,轉為二進制數據

示例代碼:

<?php
$img = 'xx.jpg'; //圖片的地址
echo file_get_contents($img);
//這里輸出到瀏覽器的是亂碼
?>

php 輸出二進制圖片的方法

国产视频appphp 向瀏覽器輸出二制的圖片,只需要加個 header 頭來聲明一下圖片類型即可!

例:

<?php
//聲明為圖片類型,發送header頭
header( "Content-type: image/jpeg");
$img = 'xx.jpg';
$size = filesize($img );
$fp= fopen($img, 'r');
$data = fread($fp, $size);//二進制數據
echo $data; //輸出圖片的二進制數據
?>

注:

国产视频app發送的 header 要根據具體情況而定,不一定都是image/jpeg。JPG格式的圖片就是image/jpeg,但PNG格式的圖片有可能需要聲明為 image/png,實際應用中個人應當測試一下。