<?php
$compressed = gzcompress('Compress me', 9);
echo $compressed;
echo "\n";
echo gzuncompress($compressed);
?> 

解决方案 »

  1.   

    楼上这样写的对MYSQL有用么?
      

  2.   

    <?php
    $longString = null;
    for ($i=1;$i<=255;$i++)
    {
    $longString .= chr($i);
    }
    echo strlen($longString)."\n"; #255 获取一个字母不重复的字符串长度为 255
    $compressed   =   gzcompress($longString,9); #压缩 级别为 9
    echo strlen($compressed)."\n"; #266  压缩后的长度为 266 真可怜:(
    $longString = str_repeat($longString,10); # 将上面的字符串重复10遍 得到有重复字符的字符串
    echo strlen($longString)."\n"; #2550 长达 2550!
    $compressed  =  gzcompress($longString,9);  #压缩 级别仍旧为 9
    echo strlen($compressed)."\n"; #300 压缩后的长度为 300 为原长 12%!很爽,可惜检索就比较困难了
    ?>
      

  3.   


    <?php
    $longString = null;
    for ($i=1;$i<=255;$i++)
    {
    $longString .= chr($i);
    }
    echo strlen($longString)."\n"; #255 获取一个字母不重复的字符串长度为 255
    $compressed   =   gzcompress($longString,9); #压缩 级别为 9
    echo strlen($compressed)."\n"; #266  压缩后的长度为 266 真可怜:(
    $longString = str_repeat($longString,10); # 将上面的字符串重复10遍 得到有重复字符的字符串
    echo strlen($longString)."\n"; #2550 长达 2550!
    $compressed  =  gzcompress($longString,9);  #压缩 级别仍旧为 9
    echo strlen($compressed)."\n"; #300 压缩后的长度为 300 为原长 12%!很爽,可惜检索就比较困难了
    ?>没着色不爽……再发遍~这样写可以节省保存空间-_-!
      

  4.   

    直接把$compressed写入数据库么?
    那读出来时怎么操作?也是,如果搜索时怎么操作。。有得必有失。。
      

  5.   


    echo gettype($compressed)."\n"; # string
    压缩后写入数据库,读出后解压使用.
      

  6.   

    嗯。。明白了以前看过一个gzip的压缩函数,跟这里一样。。