pierswarmers / mandate
Simple utility for describing date based rules.
1.0.0
2015-03-13 05:19 UTC
Requires
- php: >=5.4
This package is not auto-updated.
Last update: 2025-04-26 19:57:00 UTC
README
Simple utility for testing dates against chained rules.
Installation
The recommended way to install ManDate is through
Composer. Require the pierswarmers/mandate
package
into your composer.json
file:
composer require "pierswarmers/mandate" dev-master
composer require "pierswarmers/mandate" dev-master
Or in your composer.json
file:
{ "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. |