PHPackages                             yangjiasheng1997/timerange - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. yangjiasheng1997/timerange

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

yangjiasheng1997/timerange
==========================

日期范围获取

v1.0.0(3y ago)029MITPHPPHP &gt;=7.0

Since Feb 23Pushed 3y ago1 watchersCompare

[ Source](https://github.com/YangJiaSheng1997/timerange)[ Packagist](https://packagist.org/packages/yangjiasheng1997/timerange)[ RSS](/packages/yangjiasheng1997-timerange/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

 日期获取
======

[](#-日期获取-)

安装
--

[](#安装)

```
$ composer require yangjiasheng1997/timerange
```

使用
--

[](#使用)

```
//获取星期
$week = RangeDate::set(2020,true,'Y-m-d')->getWeek();
//获取月份
$month = RangeDate::set(2020,true,'Y-m-d H:i:s')->getMonth($start);
//获取季度
$quarter = RangeDate::set(2020,true,'Y-m-d')->getQuarter($start);
//年份
$week = RangeDate::set([2020,2022],true,'Y-m-d')->getYear();
//时间段获取
$hours = RangeTime::set('2020-04-26',true)->getHours('8:30',['08:30','17:00'],['12:30','13:30'],3600);

```

set()参数：

1、设置年份，可以是四位数的年份也可以是一个数组\[2020,2022\]，意思是获取2020年到2022年的日期，不设为当前年

2、是否格式化时间戳，默认返回时间戳

3、格式化时间戳的格式，默认Y-m-d

getWeek()可以传入一个数字意思是从第几周开始

getYear()方法不需要传参数

getHours() 第一个参数为从几点开始，第二个参数为范围获取，第三个参数为排除哪几个时间段，第四个参数为间隔时间，默认一个小时

工作中经常要获取这些信息对数据进行分析，其他方法会慢慢进行完善；

PHP版本要求7.0及以上；

返回
--

[](#返回)

```
$month = RangeDate::set(2020,true,'Y-m-d')->getMonth();
//获取月份返回格式 其他类似
array(12) {
  [0]=>
  array(3) {
    ["month"]=>
    int(1) //月份
    ["start"]=>
    string(10) "2020-01-01"//每个月开始时间 当天零点
    ["end"]=>
    string(10) "2020-01-31" 每个月结束时间 当天的23:59:59
  }
  [1]=>
  array(3) {
    ["month"]=>
    int(2)
    ["start"]=>
    string(10) "2020-02-01"
    ["end"]=>
    string(10) "2020-02-29"
  }
}
$hours = RangeTime::set('2020-04-26',true)->getHours('8:30',['08:30','17:00'],['12:30','13:30'],3600);
//获取时间段返回格式
array(2) {
  ["hours"]=>
  array(7) {
    [0]=>
    string(5) "08:30"
    [1]=>
    string(5) "09:30"
    [2]=>
    string(5) "10:30"
    [3]=>
    string(5) "11:30"
    [6]=>
    string(5) "14:30"
    [7]=>
    string(5) "15:30"
    [8]=>
    string(5) "16:30"
  }
  ["info"]=>
  array(7) {
    [0]=>
    array(2) {
      ["start"]=>
      string(5) "08:30"
      ["end"]=>
      string(5) "09:29"
    }
    [1]=>
    array(2) {
      ["start"]=>
      string(5) "09:30"
      ["end"]=>
      string(5) "10:29"
    }
    [2]=>
    array(2) {
      ["start"]=>
      string(5) "10:30"
      ["end"]=>
      string(5) "11:29"
    }
    [3]=>
    array(2) {
      ["start"]=>
      string(5) "11:30"
      ["end"]=>
      string(5) "12:29"
    }
    [6]=>
    array(2) {
      ["start"]=>
      string(5) "14:30"
      ["end"]=>
      string(5) "15:29"
    }
    [7]=>
    array(2) {
      ["start"]=>
      string(5) "15:30"
      ["end"]=>
      string(5) "16:29"
    }
    [8]=>
    &array(2) {
      ["start"]=>
      string(5) "16:30"
      ["end"]=>
      string(5) "17:29"
    }
  }
}

```

License
-------

[](#license)

MIT

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1172d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e5e98cc50947c6b7772bcae5f6ee55979f1a4a18b8334501164a559d2cc2108d?d=identicon)[YangJiaSheng1997](/maintainers/YangJiaSheng1997)

---

Top Contributors

[![YangJiaSheng1997](https://avatars.githubusercontent.com/u/126125806?v=4)](https://github.com/YangJiaSheng1997 "YangJiaSheng1997 (5 commits)")

### Embed Badge

![Health badge](/badges/yangjiasheng1997-timerange/health.svg)

```
[![Health](https://phpackages.com/badges/yangjiasheng1997-timerange/health.svg)](https://phpackages.com/packages/yangjiasheng1997-timerange)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
