本文实例讲述了php操作mysql中blob字段的方法。分享给大家供大家参考,具体如下:
1、mysql中blob字段类型
blob类型的字段用于存储二进制数据。
mysql中,blob是个类型系列,包括:tinyblob、blob、mediumblob、longblob,这几个类型之间的唯一区别是在存储文件的最大大小上不同。
mysql的四种blob类型
tinyblob: 最大 255字节
blob: 最大 65k
mediumblob:最大 16m
longblob: 最大 4g
注意:如果你存储的文件过大,数据库的性能会下降很多。
2、php操作blob案例
(1)操作新闻内容
mysql_connect( "localhost", "root", "password"); //连接数据库
mysql_select_db( "database"); //选定数据库
//数据插入:
$content="测试内容"; //$content为新闻内容
$compress_content = bin2hex(gzcompress($content));
$result=mysql_query( "insert into news (content) value ('$compress_content')");//数据插入到数据库news表中
//展示:
$query = "select data from testtable where filename=$filename";
$result = mysql_query($query);
$compress_content=@gzuncompress($result["compress_content"]);
echo $compress_content;
?>
(2)存储图片
mysql_connect( "localhost", "root", "password"); //连接数据库
mysql_select_db( "database"); //选定数据库
//存储:
$filename="" //这里填入图片路径
$compress_content = addslashes(fread(fopen($filename, "r"), filesize($filename)));//打开文件并规范化数据存入变量$data中
$result=mysql_query( "insert into news (content) value ('$compress_content')");//数据插入到数据库test表中
//展示:
ob_end_clean();
header( "content-type: image/gif");
$query = "select data from testtable where filename=$filename";
$result = mysql_query($query);
echo $result["compress_content"];
?>
希望本文所述对大家php程序设计有所帮助。
希望与广大网友互动??
点此进行留言吧!