ManDate
Simple utility for testing dates against chained rules., (*1)
, (*2)
Installation
The recommended way to install ManDate is through
Composer. Require the pierswarmers/mandate
package
into your composer.json
file:, (*3)
composer require "pierswarmers/mandate" dev-master, (*4)
composer require "pierswarmers/mandate" dev-master
Or in your composer.json
file:, (*5)
{
"require": {
"pierswarmers/mandate": "dev-master"
}
}
Usage
use ManDate\Mandate;
use ManDate\Rule\WeekdayRule;
use ManDate\Rule\DaytimeRule;
use ManDate\Rule\MorningRule;
$mandate = new Mandate();
$mandate
->andWhere(new WeekdayRule())
->andWhere(new DaytimeRule())
->andWhereNot(new MorningRule())
;
$date = new \DateTime('2015-03-02 11:30', new \DateTimeZone('Australia/Sydney'));
if ($mandate->validate($date)) {
echo 'It\'s a weekday afternoon!';
}
Rules
Rule |
Details |
AfternoonRule |
Later than midday. |
CollisionRule |
Collides with another date. |
DaytimeRule |
After sunrise and before sunset. |
MorningRule |
Earlier than midday. |
NighttimeRule |
After sunset and before sunrise. |
WeekdayRule |
Monday to Friday. |
WeekendRule |
Saturday and Sunday. |