scato/serializer

v0.3.0 2015-10-03 20:22 UTC

README

Latest Version on Packagist Software License Build Status

一个最小化配置的序列化器,专注于DTO而非实体。

安装

通过Composer

$ composer require scato/serializer

用法

$serializer = SerializerFacade::create();
$string = $serializer->serialize(..., 'json');

阅读文档以获取更多关于如何使用序列化器的示例,或跳转到高级用法了解自定义类型处理和自定义工厂。

变更日志

请参阅变更日志以获取最近更改的更多信息。

测试

$ composer test

贡献

请参阅贡献指南以获取详细信息。

已知问题

不支持组合类型。如果您的类型读取为array|Foo[]string|null,那么您就无法使用。

反序列化不支持多态。如果一个类型为Foo,则对象永远不会被反序列化为Foo的子类。原因在于DocBlocks无法定义区分符。(也许我们可以使用@uses标签指向一个具有默认值的属性,以便将属性/值对用作区分符。)

不执行缓存,这使得反序列化相对较慢。

存在phpdocumentor/reflection-common组件的问题,因此您必须将其添加到自己的composer.json

  "require": {
    "phpdocumentor/reflection-common": "^1.0@dev"
  }

鸣谢

许可

MIT许可(MIT)。请参阅许可文件以获取更多信息。