nrk/bencoder

纯PHP编写的Bencode序列化和反序列化器

v1.0.0 2011-12-24 17:02 UTC

This package is not auto-updated.

Last update: 2024-09-14 11:55:53 UTC


README

关于

Bencoder 是一个纯PHP实现的工具类,用于处理使用 Bencode 编码格式的对象的序列化和反序列化。

这个类的原始实现可以追溯到2004年初几个月,为了使其能够与现代版本的PHP解释器兼容,对其进行了一些修改和更新,然后将其公开。基本上,我将其开源是因为可能有人会认为它有用,而且让它在我的备份的迷宫中腐烂会是一件很遗憾的事情。

实现细节

  • 根据规范,此类不处理浮点/双精度值。
  • 大于 2147483647 的整数的序列化和反序列化仅在64位PHP解释器中使用时才有效。
  • 以字符串值作为键的PHP数组被视为Bencode字典。
  • 序列化器不会检查循环引用,并且会断开生成堆栈溢出错误。

示例

<?php
require 'autoloader.php';

use Bencoder\Bencode;

$structure = array("oh", "rly?", "ya", "rly!");
$encoded = Bencode::encode($structure);
$decoded = Bencode::decode($encoded);

作者

许可证

Bencoder 的代码在MIT许可证的条款下分发(请参阅LICENSE)。