PHP序列化替代方案,减少存储需求

时间:2013-09-11 12:23:49

标签: php serialization

是否有替代PHP的序列化需要更少的空间?

我问,因为我已经序列化了一个对象数组,我注意到大多数字节用于保存类的名称。因此,即使没有必要,也会一次又一次地出现相同的字符串。

1 个答案:

答案 0 :(得分:0)

实现序列化很容易:

function serialize2($arr){
  result='';
  foreach($arr as $key=>$val) $result.=(is_array($val)?serialize2($val):$key.'=>'.$val)
  return result;
}

棘手的一点是基于规则的压缩。当你说“我注意到大多数字节用于保存类的名称时”你基本上说“似乎有一个规则,如何以更加压缩的方式输出事物”。由于我不知道你的数据,而你似乎没有确定哪些规则,我的帮助就此停止了。从这里你可以尝试识别规则并将它们构建到我给你的序列化功能中。