也就是说,我要测试是否能够安全地对字符串进行gzinflate。
如果我的压缩数据被篡改了,我会收到一个“坏数据”警告。我不想抑制这个警告,这意味着我要么必须捕获它,要么测试它是否可以被gzinflate。后者是我的首选解决方案,但我不知道该如何实现。
以下代码示例应该能帮助你:
if(i_can_haz_inflate($data))
{
// go ahead
$source = gzinflate($data);
}
else
{
// bad data
}
编辑:我已经指定了gz(de | in)flate,意识到我实际上并不太关心压缩算法。是否有更适合在尝试解压缩之前检查完整性的算法?