【问题标题】:Are there any binary serializers available?是否有可用的二进制序列化程序?
【发布时间】:2023-04-07 22:10:01
【问题描述】:

在这里节省空间。我有一个需要为每一行序列化的对象。

理论上,它需要由 168 个 16b 无符号整数组成(即使在 php 中没有显式键入),应该值 336 个字节。

如果我使用创建字符串的 serialize() 函数,则大小最多为 2349 字节。

php 是否有二进制类型的序列化程序?

【问题讨论】:

    标签: php serialization


    【解决方案1】:

    将数据存储在一个简单的数组中。然后pack它:

    $len = count($arr);
    $data = pack("S$len", ...$arr); // requires PHP5.6+
    

    要取回你想要的数组unpack()it:

    $arr = unpack("S$len", $data);
    

    请注意,您需要将 $len 变量保留在 $data 块中。

    更多信息here

    【讨论】:

      猜你喜欢
      • 2017-01-08
      • 2018-11-16
      • 2015-11-23
      • 1970-01-01
      • 2014-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-25
      相关资源
      最近更新 更多