plumphp / plum-date
PlumDate 为 Plum 提供日期和时间转换器。
Requires
- plumphp/plum: ~0.4
Requires (Dev)
- phpunit/phpunit: ~4.8
This package is auto-updated.
Last update: 2024-09-20 09:33:31 UTC
README
PlumDate 为 Plum 提供日期和时间转换器。Plum 是一个 PHP 的数据处理管道。
由欧洲维也纳的 Florian Eckerstorfer 开发。
安装
您可以使用 Composer 安装 PlumDate。
$ composer require plumphp/plum-date
使用方法
有关更多信息,请参阅 Plum 文档。
目前,PlumDate 包含将字符串和时间戳转换为 DateTime
对象以及将 DateTime
对象转换为字符串和时间戳的转换器,以及用于检测日期是否在某个时间点之前或之后的过滤器。
概述
转换器
DateTimeToStringConverter
DateTimeToTimestampConverter
StringToDateTimeConverter
TimestampToDateTimeConverter
过滤器
DateTimeToStringConverter
Plum\PlumDate\DateTimeToStringConverter
将 DateTime
对象转换为字符串。字符串的格式必须传递给构造函数。
use Plum\PlumDate\DateTimeToStringConverter; $converter = new DateTimeToStringConverter('y-m-d H:i:s'); $converter->convert(new DateTime()); // -> e.g., "2015-10-21 19:28:00"
DateTimeToTimestampConverter
Plum\PlumDate\DateTimeToTimestampConverter
将 DateTime
对象转换为时间戳。
use Plum\PlumDate\DateTimeToTimestampConverter; $converter = new DateTimeToTimestampConverter(); $converter->convert(new DateTime()); // -> e.g., 1445448480
StringToDateTimeConverter
Plum\PlumDate\StringToDateTimeConverter
接收一个字符串并返回一个 DateTime
对象。构造函数可以接受一个可选的 DateTimeZone
对象,该对象被传递给 DateTime
构造函数。
use Plum\PlumDate\StringToDateTimeConverter; $converter = new StringToDateTimeConverter(); $converter->convert('2015-10-21 19:28:00'); // -> DateTime $converter = new StringToDateTimeConverter(new DateTimeZone('Europe/Vienna')); $converter->convert('2015-10-21 19:28:00'); // -> DateTime
TimestampToDateTimeConverter
Plum\PlumDate\TimestampToDateTimeConverter
接收一个时间戳并返回一个 DateTime
对象。可以传递一个 DateTimeZone
实例到构造函数,该实例将用于创建 DateTime
对象。
use Plum\PlumDate\TimestampToDateTimeConverter; $converter = new TimestampToDateTimeConverter(); $converter->convert(1445448480); // -> DateTime $converter = new TimestampToDateTimeConverter(new DateTimeZone('Europe/Vienna')); $converter->convert(1445448480); // -> DateTime
AfterFilter
Plum\PlumDate\AfterFilter
对于所有在给定日期之后的日期返回 true
。
use Plum\PlumDate\AfterFilter; $filter = new AfterFilter(new DateTime('2015-10-21 19:28')); $filter->filter(new DateTime('2015-10-26 21:00')); // -> true $filter->filter(new DateTime('1955-11-12 18:38')); // -> false // Same date as in constructor: $filter->filter(new DateTime('2015-10-21 19:28')); // -> false
BeforeFilter
Plum\PlumDate\BeforeFilter
对于所有在给定日期之前的日期返回 true
。
use Plum\PlumDate\BeforeFilter; $filter = new BeforeFilter(new DateTime('2015-10-21 19:28')); $filter->filter(new DateTime('1955-11-12 18:38')); // -> true $filter->filter(new DateTime('2015-10-26 21:00')); // -> false // Same date as in constructor: $filter->filter(new DateTime('2015-10-21 19:28')); // -> false
RangeFilter
Plum\PlumDate\RangeFilter
对于所有位于给定日期范围内的日期返回 true
。
use Plum\PlumDate\AfterFilter; $filter = new AfterFilter(new DateTime('2000-01-01 00:00:00'), new Date('2009-12-31 23:59:59')); $filter->filter(new DateTime('2005-07-07 12:00:00')); // -> true $filter->filter(new DateTime('2015-10-21 19:28:00')); // -> false // Same date as in start or end date: $filter->filter(new DateTime('2000-01-01 00:00:00')); // -> true $filter->filter(new DateTime('2009-12-31 23:59:59')); // -> true
变更日志
版本 0.1 (2015年10月23日)
- 首次发布
许可证
MIT 许可证适用于 plumphp/plum-date。有关完整的版权和许可信息,请查看与此源代码一起分发的 LICENSE 文件。