marsapp/datetimehelper

DatetimeHelper 库,提供格式判断、时间增减等。

0.1.0 2019-03-28 13:19 UTC

This package is auto-updated.

Last update: 2024-09-29 02:08:15 UTC


README

时间处理库,提供格式判断、时间增减等。

延续库 marshung/helper,仅保留和维护 DatetimeHelper

Latest Stable Version Total Downloads Latest Unstable Version License

概述

安装

Composer 安装

# composer require marsapp/datetimehelper

包含

在使用之前包含 composer 自动加载器。

require __PATH__ . "vendor/autoload.php";

使用

DatetimeHelper

命名空间使用

use marsapp\helper\datetime\DatetimeHelper;

isDate()

判断日期是否合法

isDate($date) : Bool

示例

if (DatetimeHelper::isDate('2019-01-15)) {
	die('Date format error');
}

dateAdd()

日期计算 - 增加

dateAdd(String $date, Int $add = '1', String $unit = 'day', String $format = 'Y-m-d') : string

$unit: 天,月,年,小时,分钟,秒

示例

DatetimeHelper::dateAdd('2019-01-31', '1', 'day');
// result: 2019-02-01

DatetimeHelper::dateAdd('2019-01-31', '1', 'month');
// result: 2019-02-28

DatetimeHelper::dateAdd('2019-01-31 12:34:56', '13', 'month', 'Y-m-d H:i:s');
// result: 2020-02-29 12:34:56

DatetimeHelper::dateAdd('2019-01-31 12:34:56', '20', 'hour', 'Y-m-d H:00:00');
// result: 2019-02-01 09:00:00

dateReduce()

日期计算 - 减少

dateReduce(String $date, Int $reduce = '1', String $unit = 'day', String $format = 'Y-m-d') : string

$unit: 天,月,年,小时,分钟,秒

示例

DatetimeHelper::dateReduce('2019-01-01', '1', 'day');
// result: 2018-12-31

DatetimeHelper::dateReduce('2019-01-31', '2', 'month');
// result: 2018-11-30

DatetimeHelper::dateReduce('2020-02-29 12:34:56', '1', 'year', 'Y-m-d H:i:s');
// result: 2019-02-28 12:34:56

dateCal()

日期计算

dateCal(String $date, Int $difference = '1', String $unit = 'day', String $format = 'Y-m-d') : string

$difference 正值为增加,负值为减少
$unit: 天,月,年,小时,分钟,秒

示例

DatetimeHelper::dateCal('2019-01-31', '1', 'month');
// result: 2019-02-28

DatetimeHelper::dateCal('2020-02-29', '-1', 'year');
// result: 2019-02-28

dateIterator()

获取日期迭代器 - 按天迭代日期

dateIterator($startDate, $endDate)

示例

$daterange = DateTimeHelper::dateIterator('2018-01-01', '2018-01-31');
foreach($daterange as $date){
    echo $date->format('Y-m-d') . '<br>';
}