php压缩文本成二进制数据 + mysql blob数据存储

php:

$str = 'my deee uuu iiiii yyyyy tttt rrrrr lll llllll kkkkkk  jnjjjnnnbhggfffddddddddddddddd ffffffffffffffffg         ggggggggg';

echo "str".strlen($str)."\r\n";

//压缩率最低

$gzencode = gzencode($str,9);
echo "gzencode".strlen($gzencode)."\r\n";

//压缩率居中

$gzcompress = gzcompress($str,9);
echo "gzcompress".strlen($gzcompress)."\r\n";

//压缩率并列最高

$gzdeflate = gzdeflate($str,9);
echo "gzdeflate".strlen($gzdeflate)."\r\n";

//压缩率并列最高

$bzcompress = bzcompress($str,9);
echo "bzcompress".strlen($gzdeflate)."\r\n";

解压缩

gzinflate()

这个函数负责解压gzdeflate()函数的压缩字符串


mysql :

blob类型是用来存储对象的,通过以上得php压缩的得到的二进制文本可以存储到其中。

mysql BLOB类型

MySQL中,BLOB是个类型系列,包括:TinyBlob、Blob、MediumBlob、LongBlob,这几个类型之间的唯一区别是在存储文件的最大大小上不同。   
  • 1
  • 2

  MySQL的四种BLOB类型 
  类型 大小(单位:字节) 
  TinyBlob 最大 255 
  Blob 最大 65K 
  MediumBlob 最大 16M 
  LongBlob 最大 4G

linux修改etc/my.cnf 
[mysqld] 
max_allowed_packet = 16M //不同于[mysqldump]下的max_allowed_packet



猜你喜欢

转载自blog.csdn.net/qq_39399594/article/details/80578676
今日推荐