tsufeki / kayo-json-mapper
将 JSON 数据映射到 PHP 对象
0.3.6
2019-12-03 19:53 UTC
Requires
- php: >=7.1
- phpdocumentor/reflection-docblock: ^4.3
- phpdocumentor/type-resolver: ^0.5 || ^0.4
Requires (Dev)
- phpstan/phpstan: ^0.11
- phpstan/phpstan-phpunit: ^0.11
- phpunit/phpunit: ^7
README
将 JSON 数据映射到 PHP 对象并反向操作。无需自定义注解。
安装
使用 Composer
$ composer require tsufeki/kayo-json-mapper
使用方法
use Tsufeki\KayoJsonMapper\MapperBuilder; $mapper = MapperBuilder::create() ->getMapper(); $serialized = '{"foo": [1, 2], "bar": "baz"}'; // Pass data and the expected type: $object = $mapper->load(json_decode($serialized), AClass::class); $serialized2 = json_encode($mapper->dump($object));
配置
Kayo 被设计为无需特殊类配置(如注解等)即可加载数据/导出数据。所有必要信息都是从反射和文档注释中收集的。
然而,可以通过 MapperBuilder
方法以多种方式自定义其通用行为。
类型与加载
所有由 phpDocumentor 识别的类型都可以加载,甚至是联合类型(A|B
)——但请注意,对象是通过它们的形状(即属性)来区分的,因此通常需要 throwOnMissingProperty(true)
和 throwOnUnknownProperty(true)
。
许可协议
MIT - 查看 许可协议。