承接 kveugene/datetime 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

kveugene/datetime

最新稳定版本:1.0.0

Composer 安装命令:

composer require kveugene/datetime

包简介

Date and time additional library

README 文档

README

PHPUnit Tests Coverage License: MIT Language: PHP Version: >=8.4

Information

This solution is designed to simplify the definition of time range boundaries in both sliding and calendar window modes.

The sliding window mode involves deriving the start and end of a time range relative to the current date and time, specified in seconds, minutes, hours, days, weeks, months, quarters, or years. This mode is implemented using the standard DateInterval mechanism.

The calendar window mode involves defining the start and end points of a specific time range relative to the calendar. In other words, a calendar window allows you to determine the beginning and end of the current, previous, or next day, week, month, quarter, etc.

The operating mode is determined based on whether a time zone is specified. Specifically, if a time zone is designated for a given interval, values ​​are calculated according to the calendar; otherwise, calculations are performed based on a sliding time window.

Requirements

This library works only with PHP version 8.4 and higher.

Extension mb-string is required.

Installation

You can install the library using Composer:

composer install kveugene/datetime

Usage

DateTime

Syntactic Sugar for Date and Time.

use KVEugene\DateTime\DateTime;

// Extracts the hour from a natively DateTime object.
$date = new \DateTime();
$hour = (int) $date->format('H');

// Extracts the hour from a library DateTime object.
$date = new DateTime();
$hour = $date->hour;

// Sets the date to the first day of the month (natively)
$date = new \DateTime();
$date->setDate((int) $date->format('Y'), (int) $date->format('n'), 1);

// Sets the date to the first day of the month using a library.
$date = new DateTime();
$date->day = 1;

TimeOffset

The TimeOffset object is an extension of the native DateInterval object, enabling the use of calendar-based date and time definitions.

use KVEugene\DateTime\DateTime;
use KVEugene\DateTime\TimeOffset;

// Get the start date and time of the quarter: sliding mode.
$date = new DateTime()->sub(new TimeOffset('1q'));

// Get the start date and time of the current quarter in the Europe/Riga time zone.
$date = new DateTime()->sub(new TimeOffset('1q Europe/Riga'));

// Get the start date and time of the previous quarter in the Europe/Riga time zone.
$date = new DateTime()->sub(new TimeOffset('2q Europe/Riga'));

You can obtain additional information about available properties and formats from the source code documentation.

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 8
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-05-11

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固