phpmentors/domain-commons

领域模型公用库

v1.1.3 2017-06-01 00:05 UTC

This package is auto-updated.

Last update: 2024-08-29 04:14:27 UTC


README

领域模型公用库

Build Status SensioLabsInsight Total Downloads Latest Stable Version Latest Unstable Version

安装

Domain Commons可以使用Composer进行安装。

$ composer require phpmentors/domain-commons

功能

DateTime基础

日期和时间

  • 日期
  • DateTime
  • 月日
  • 年月
  • 时分
  • 年龄范围

周期

  • 持续时间
  • 周期
  • 期限

可遍历

  • DailyTrait / DailyIteratableInterface
  • MonthlyTrait / MonthlyIteratableInterface

您可以如下定义一个特定领域的周期

namespace MyDomain;

use PHPMentors\DomainCommons\DateTime\Date;
use PHPMentors\DomainCommons\DateTime\Period\DailyIteratableInterface;
use PHPMentors\DomainCommons\DateTime\Period\DailyTrait;

class DailyPeriod extends Period implements DailyIteratableInterface
{
    use DailyTrait;

    public function __construct(Date $start, Date $end)
    {
        parent::__construct($start, $end);
        $this->it = $this->iterate(); // this line enables iterator
    }
}

您可以使用标准的foreach语句按日期迭代此周期,如下所示

use PHPMentors\DomainCommons\DateTime\Date;
use MyDomain\DailyPeriod;

$period = new DailyPeriod(new Date('2015-04-12'), new Date('2015-06-30'));

$count = 0;
foreach ($period as $one) {
    echo $one->format('m/d') . PHP_EOL;
}

实用工具

  • 时钟

矩阵(类型和地址)

  • 类型矩阵
  • 地址矩阵

操作

  • 可置零接口

字符串工具

  • 唯一名称

支持

如果您发现错误或有问题,或者想要请求功能,请在问题上创建一个问题或拉取请求。

版权

版权(c)2015 GOTO Hidenori,2015 KUBO Atsuhiro,版权所有。

许可

BSD 2-Clause License