timdev/doctrine-date-interval

向下兼容 Doctrine DBAL DateIntervalType 以用于 DBAL <2.6

v0.1.2 2017-04-21 20:01 UTC

This package is auto-updated.

Last update: 2024-09-20 05:31:21 UTC


README

Doctrine DBAL 2.6 将引入一个 DateInterval 类型,该类型将 PHP \DateInterval 映射到数据库中的列。这将允许在 ORM 中的实体上映射 DateInterval 属性。

撰写本文时,2.6 版本尚未发布,但我需要这个功能来用于一个项目。因此,这个小项目提供了用于 2.5(以及可能更低的版本)的类型。

这仅仅是 DBAL 2.6 即将推出的 DateIntervalType 类的一个复制粘贴工作,附带 composer.json 文件,以便将其轻松地拉入使用 <2.6 的项目中。

安装

$ composer require timdev/doctrine-date-interval:0.1.2

用法

初始化 EntityManager 的任何地方

\Doctrine\DBAL\Types\Type::addType('dateinterval', \TimDev\Doctrine\DBAL\Types\DateIntervalType::class);
$entityManager
    ->getConnection()
    ->getDatabasePlatform()
    ->registerDoctrineTypeMapping('dateinterval', 'dateinterval');