本文实例讲述了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)操作新闻内容
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<?php
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)存储图片
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
<?php
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程序设计有所帮助。
原文链接:http://blog.csdn.net/zhao1234567890123456/article/details/39371243