大数据场景下基于php实现压缩字符串的方法

点击上方“码农编程进阶笔记”,选择“置顶或者星标

在大数据驱使下,数据量越来越多,以内容为王的时代更是让数据表越大越膨胀,导致读取数据表时返回数据变慢,访问内容页速度也相应变慢。如果能在保持内容不变,对内容进行压缩无疑也是一种网站优化。倘若每条内容长度都被压缩到之前的百倍千倍之后,整体数据表就减少了几G、几十G的存储,读取数据时返回数据速度也会提升。以下分享php压缩数据的方法,希望给需要人带来帮助。

/**
 * 判断字符串是否base64编码
 */
function func_is_base64($str)
{  
    return $str == base64_encode(base64_decode($str)) ? true : false;  
} 
/**
 * 压缩内容
 */
function func_gzcompress($str, $level = 9)
{
    if (!func_is_base64($str)) {
        return base64_encode(gzcompress($str, $level));
    }
    return $str;
}
/**
 * 解压内容
 */
function func_gzuncompress($str)
{
    if (func_is_base64($str)) {
        return gzuncompress(base64_decode($str));
    }
    return $str;
}

 压缩的方法除了gzcompress之外,还有gzdeflate、gzencode、bzcompress,经网友测试得出结果:

  •  gzcompress 速度最快,压缩比率较高。 

  • gzdeflate 压缩比率最高,速度稍慢于gzcompress 

  • gzencode 与 gzdeflate 比较接近,gzdeflate稍有优势 

  • bzcompress 速度最慢,压缩比率最慢。 

因此建议使用 gzcompress 和 gzdeflate。

在[ 码农编程进阶笔记 ]公众号回复【激活码】关键字,获取最新激活码百度盘链接,每天定时更新。

c7fdc1b3ff0081a314683a100812d4b3.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值