aktuba / json-mapper
用于 json/数组的 OOP 容器
0.1.2
2019-12-01 17:37 UTC
Requires
- php: ^7.1
- ext-mbstring: *
This package is auto-updated.
Last update: 2024-09-29 05:22:16 UTC
README
数据数组到对象树的转换库。用于简化 json-api 的实现。
功能
- 面向对象的数据接口
- 支持对象的自动处理嵌套结构
使用要求
- PHP 7.1 及以上
安装
$ composer require aktuba/json-mapper
使用示例
<?php declare(strict_types=1); use aktuba\JsonMapper\JsonMapper; require __DIR__.'/../vendor/autoload.php'; $jsonData = <<<JSON { "users": [ { "name": "John", "surname": "Smith", "age": 24 }, { "name": "Marry", "surname": "Cary", "age": 22 } ], "meta": { "result": true, "version": "1.0", "took": "0.035" } } JSON; class User extends JsonMapper { protected const PROPERTIES = [ 'name' => 'string', 'surname' => 'string', 'age' => 'int', ]; } class Meta extends JsonMapper { protected const PROPERTIES = [ 'result' => 'bool', 'version' => 'string', 'took' => 'float', ]; } class Data extends JsonMapper { protected const PROPERTIES = [ 'users' => 'User[]', 'meta' => 'Meta', ]; } $data = new Data(json_decode($jsonData, true)); var_dump($data);
更多示例在 examples
目录中