定制 inok/dto 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

inok/dto

最新稳定版本:1.0.0

Composer 安装命令:

composer require inok/dto

包简介

DTO with Hydration for PDO

README 文档

README

На данный момент поддерживаются типы: string, bool, int, float, DateTimeImmutable. Трейты:

  • toJSON - преобразование в JSON, можно передать список нужных полей массивом
  • toArray - преобразование в массив, можно передать список нужных полей массивом
  • toPDO - преобразование в массив, пригодный для PDO, можно передать список нужных полей массивом
  • updateDTO - возможность получения изменённых полей:
    • switchUpdate - смена режима вставки/добавления DTO
    • resetUpdate - сброс измененных полей на текущие значения
    • getUpdateFields - получение списка измененных полей, если передается значение:
      • true (по-умолчанию) - получение массива только названий полей
      • false - получение массива полей, дополнительно со значениями old и current

Пример DTO:

/**
 * @property int $id
 * @property string $name
 * @property string $workgroup
 * @property int|null $workplace_id
 * @property DateTimeImmutable|null $created_at
 */
class ComputerDTO extends HydrateDTO {
  private int $id;
  /** modify=mb_strtolower */
  private string $name;
  private string $workgroup;
  private ?int $workplace_id = null;
  /** sql=Y-m-d H:i:s; show=Y-m-d */
  private ?DateTimeImmutable $created_at = null;
}

, где комментарии:

  • modify - функция для модификации исходного значения ДО гидрации
  • sql - для SQL-формата даты. Если не указано, то используется формат Y-m-d H:i:s
  • show - для остального (toArray, toJSON). Если не указано, то используется формат Y-m-d H:i:s

统计信息

  • 总下载量: 27
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-12-02