此包最新版本(0.6.0)没有可用的许可信息。

通用数据传输对象

0.6.0 2022-03-22 07:18 UTC

README

Latest Stable Version Total Downloads Latest Unstable Version License Production Environment

安装

php composer require framespictures/dto

注意

PLEASE NOTE THIS PROJECT IS WORK IN PROGRESS! API MAY CHANGE WITHOUT WARNING!
IF YOU WANT TO INCORPORATE IT INTO YOUR PROJECT PLEASE STICK TO ONE PARTICULAR VERSION.

数据传输对象理论

数据传输对象(DTO)是一个用于封装数据并将其从应用的一个子系统发送到另一个子系统的对象。DTOs最常用于N-Tier应用中的服务层,用于在自身和UI层之间传输数据。这里的主要好处是减少分布式应用中需要在网络上传输的数据量。它们在MVC模式中也非常适合作为模型。

DTO的另一个用途是封装方法调用的参数。如果一个方法有4个或5个以上的参数,这可能非常有用。

在内部使用DTO大大简化了PHP代码,允许IDE代码提示,并避免在数组字符串键中犯错误,这是常见的错误来源。它还极大地提高了重构。

与Eloquent结合在Repository模式中使用,可以实现真正的逻辑和持久性分离。

常见用例

API输出

数组到结构化模型转换

数据映射

输入映射

数据转换、清理和链式操作

代码驱动集

基本DTO

灵活DTO

映射器

基本功能

多级映射

高级映射

设置模型

数据库集

配置模型

Laravel配置

类映射