kwizer/hydrator

1.0.0 2018-04-09 16:42 UTC

This package is not auto-updated.

Last update: 2024-09-24 20:35:22 UTC


README

Build Status

没有映射的简单 hydrator。

为什么

通过数据源简单地 hydrate 实例。

如何

实例化 hydrator,并使用要 hydrate 的对象和数据源调用 hydrate 方法

class MyClass
{
    private $foo;
}

$myDatas = ['foo' => 'bar'];
$hydrator = new \Kwizer\Hydrator\Hydrator();
$myObject = $hydrator->hydrate(MyClass::class, $myDatas);

您可以直接 hydrate 已经实例化的对象。

$myObject = new MyClass();
$myObject = $hydrator->hydrate($myObject, $myDatas);

或者使用对象源进行 hydrate

$datas = new \stdClass();
$datas->foo = 'bar';
$myObject = $hydrator->hydrate(MyClass::class, $myDatas);

如果存在,hydrator 首先使用 with 方法和 set 方法,然后直接使用属性,如果需要的话会破坏可访问性。

安装

composer require kwizer/hydrator