jurasciix/objeckson
最新稳定版本:1.0.5
Composer 安装命令:
composer require jurasciix/objeckson
包简介
README 文档
README
Objeckson - это библиотека для отображения динамических ассоциативных структур (которые, как правило, хранятся в формате JSON) на объекты PHP.
Возможности и roadmap
- Десериализовывать массивы
- Отображать на перечисления
- Анализировать обобщенные типы
- Работать с nullable-типами
- Пользовательские сеттеры
- Анализировать array-shapes: array{foo: Foo, bar: Bar}
- Значения по умолчанию для Readonly свойств
- Отображать на объекты STD: DateTime, SplFixedArray, etc...
- Комбинации прямо отображаемых типов (примитивных): string|int|Foo
- OneOf
Установка
Требования:
- PHP ≥ 8.1
- Composer
Установка посредством composer:
composer require jurasciix/objeckson:^1.0
Быстрый туториал
Следующий код демонстрирует инициализацию объекта, предоставляющего доступ к функциям Objeckson, и десериализацию данных JSON с отображением на объект PHP:
use jurasciix\objeckson\JsonProperty; use jurasciix\objeckson\Optional; use jurasciix\objeckson\Objeckson; #[JsonProperty] class APIResponse { #[Optional] public ?APIError $error = null; #[Optional] public mixed $data = null; } #[JsonProperty] class APIError { public int $code; public string $description; } $responseJSON = <<<JSON { "error": { "code": 1, "description": "Error description" } } JSON; // Инициализируем главный объект $objeckson = new Objeckson(); // Десериализовываем и отображаем данные на объект типа APIResponse. $response = $objeckson->fromJson($responseJSON, APIResponse::class); // Смотрим, что у нас вышло. var_dump($response);
统计信息
- 总下载量: 42
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Unknown
- 更新时间: 2024-04-25