aktuba / json-mapper
OOP container for json/array
0.1.2
2019-12-01 17:37 UTC
Requires
- php: ^7.1
- ext-mbstring: *
This package is auto-updated.
Last update: 2024-10-29 05:34:56 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