pew-pew/hydrator-jms

JMS序列化 hydrator网关

0.2.0 2024-03-26 22:05 UTC

This package is auto-updated.

Last update: 2024-08-26 22:57:30 UTC


README

PHP 8.3+ Latest Stable Version Latest Unstable Version License MIT

JMS Hydrator网关

使用JMS (jms/serializer)包将任意值映射到其类型等效项及其逆的接口集合。

安装

PewPew JMS Hydrator作为Composer仓库提供,可以使用以下命令在项目根目录下安装:

$ composer require pew-pew/hydrator-jms

更详细的安装说明请参阅这里

使用方法

简单hydrator创建

$jms = PewPew\Hydrator\JMS\Builder::create();

Hydrator

$hydrator = PewPew\Hydrator\JMS\Builder::create()
    ->createHydrator();

$dto = $hydrator->hydrate(ExampleDTO::class, [
    'id' => 42,
    'name' => 'Vasya',
]);

// object(ExampleDTO) {
//   id: int(42),
//   name: string("Vasya"),
// }

Extractor

$extractor = PewPew\Hydrator\JMS\Builder::create()
    ->createExtractor();

$data = $extractor->extract(new ExampleDTO(
    id: 42,
    name: 'Vasya',
));

// array(2) [
//   id => int(42),
//   name => string("Vasya"),
// ]