jerodev / data-mapper
将原始数据映射到类型化的PHP对象
1.2.1
2024-01-07 11:54 UTC
Requires
- php: ^8.1
Requires (Dev)
- jerodev/code-styles: dev-master
- phpunit/phpunit: ^9.4
This package is auto-updated.
Last update: 2024-09-15 21:46:12 UTC
README
本包可以将任何原始数据映射到预定义的强类型PHP对象。
安装
除了PHP8.1或更高版本外,映射器没有外部依赖。可以使用composer进行安装
composer require jerodev/data-mapper
基本映射
让我们从基础知识开始。映射器将数据直接映射到对象上的公共属性。如果这些属性已经通过在PHP7.4中引入的类型或通过 PHPDoc 定义了类型,映射器将尝试将这些数据类型转换为这些类型。
例如:想象有一个具有公共属性 $id 和 $name 的 Entity 类
class User { public int $id; public string $name; }
要从数组映射数据,我们只需将类名和一个包含数据的数组传递给映射器。
$mapper = new \Jerodev\DataMapper\Mapper(); $entity = $mapper->map(User::class, [ 'id' => '5', 'name' => 'John Doe', ]); // User { // +id: 5, // +name: "John Doe", // }
这是一个简单的例子,但映射器还可以映射嵌套对象、对象数组、键值数组,甚至是多层数组。
文档
有关映射、配置和最佳实践的更多信息,请参阅 文档。
许可证
本库采用MIT许可证(MIT)。有关更多信息,请参阅 许可证文件。