krifollk/hydrator

一个简单的库,提供不使用反射的方式对对象属性(私有,保护)进行填充和提取的可能性。

0.2.0 2017-03-04 22:11 UTC

This package is auto-updated.

Last update: 2024-09-21 20:56:54 UTC


README

Build Status

这是一个简单的库,提供不使用反射的方式对对象属性(私有,保护)进行填充和提取的可能性。

要求

  • PHP 7 及以上

安装

使用以下命令安装最新版本:

$ composer require krifollk/hydrator

使用示例

对象填充示例

<?php

class User 
{
    private $name;
    protected $surname;
}

$hydrator = new Krifollk\Hydrator\Hydrator();
$user = new User();

$hydrator->hydrate($user, ['name' => 'John', 'surname' => 'Doe']);

print_r($user);

输出

User Object
(
    [name:User:private] => John
    [surname:protected] => Doe
)

从对象中提取属性示例

<?php

class User
{
    private $name = 'John';
    protected $surname = 'Doe';
}


$hydrator = new Krifollk\Hydrator\PropertyExtractor();
$user = new User();

$result = $hydrator->extractProperties($user, ['name', 'surname']);

print_r($result);

输出

Array
(
    [name] => John
    [surname] => Doe
)