theoaks/relative-datetime-format-builder

面向对象的方法构建strtotime(), DateTime 和 date_create()解析器理解的相对日期时间格式。

v1.0.3 2023-01-28 07:59 UTC

This package is auto-updated.

Last update: 2024-09-28 11:32:03 UTC


README

面向对象的方法构建strtotime(), DateTime 和 date_create()解析器理解的相对日期时间格式。 查看PHP文档以获取详细信息

如何安装

使用composer安装

composer require theoaks/relative-datetime-format-builder

如何使用

use Oaks\RelativeDatetimeFormatBuilder\RelativeDateTimeFormatBuilder;

$first_day_of_january = RelativeDateTimeFormatBuilder::firstDayOf(
            MonthName::January
        );
echo $first_day_of_january;
$date = $first_day_of_january->toDateTime();

echo $date->format("y-M-d");

/// first day of January this year
/// YYYY-01-01
 
$three_days_from_now = (new RelativeDateTimeFormatBuilder())->addDays(3);
echo $three_days_from_now;

$date = $three_days_from_now->toDateTime();
$date_immutable = $three_days_from_now->toDateTimeImmutable();
/// +3 day

// First day of march 2025 at 11am
$format = (new RelativeDateTimeFormatBuilder())
->firstDay()
->ofMarch()
->year(2025)
->at(hour: 11);

echo  $format;
// first day of March 2025 11:00:00