PHPackages                             krzysztofzylka/date - 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. krzysztofzylka/date

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

krzysztofzylka/date
===================

Date library

1.1.2(9mo ago)01.6k↑607.7%MITPHPPHP &gt;=7.4

Since Dec 10Pushed 9mo ago1 watchersCompare

[ Source](https://github.com/krzysztofzylka/date)[ Packagist](https://packagist.org/packages/krzysztofzylka/date)[ RSS](/packages/krzysztofzylka-date/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (5)Dependencies (1)Versions (6)Used By (0)

Install
=======

[](#install)

```
composer require krzysztofzylka/date
```

Create instance
===============

[](#create-instance)

```
$date = new \Krzysztofzylka\Date\Date();
```

Static methods
==============

[](#static-methods)

Create instance
---------------

[](#create-instance-1)

```
\Krzysztofzylka\Date\Date::create()
\Krzysztofzylka\Date\Date::create(time())
\Krzysztofzylka\Date\Date::create(date('Y-m-d H:i:s'))
\Krzysztofzylka\Date\Date::create(new DateTime())
```

Method
======

[](#method)

Gets
----

[](#gets)

### Get time

[](#get-time)

```
$date->getTime()
```

### Get date

[](#get-date)

```
$date->getDate()
```

### Get day

[](#get-day)

```
$date->getDay()
```

### Get month

[](#get-month)

```
$date->getMonth()
```

### Get year

[](#get-year)

```
$date->getYear()
```

### Get ISO8601 date format

[](#get-iso8601-date-format)

```
$date->getISO8601()
```

### Date difference

[](#date-difference)

```
$date = \Krzysztofzylka\Date\Date::create();
$date2 = \Krzysztofzylka\Date\Date::create($date)->addDay(1);
var_dump($date->getDifference($date2)); //['years' => 0, 'months' => 0, 'days' => 1, 'hours' => 0, 'minutes' => 0, 'seconds' => 0]
```

### Get weekday difference

[](#get-weekday-difference)

```
$date->getWeekdayDifference($date)
```

Sets
----

[](#sets)

### Set date

[](#set-date)

```
$date->set(null)
$date->set(time())
$date->set(date('Y-m-d H:i:s'))
```

Format
------

[](#format)

### Change default format (Y-m-d H:i:s)

[](#change-default-format-y-m-d-his)

```
$date->format($format)
```

Add
---

[](#add)

### Add second to date

[](#add-second-to-date)

```
$date->addSecond($seconds)
```

### Add minute to date

[](#add-minute-to-date)

```
$date->addMinute($minutes)
```

### Add hours to date

[](#add-hours-to-date)

```
$date->addHour($hours)
```

### Add day to date

[](#add-day-to-date)

```
$date->addDay($days)
```

### Add weeks to date

[](#add-weeks-to-date)

```
$date->addWeek($weeks)
```

### Add month to date

[](#add-month-to-date)

```
$date->addMonth($months, $fixCalculate)
```

### Example

[](#example)

```
$date = new \Krzysztofzylka\Date\Date('2024-03-31');
$date->addMonth(1);
echo $date->getDate('Y-m-d'); //2024-04-30

$date = new \Krzysztofzylka\Date\Date('2024-03-31', false);
$date->addMonth(1);
echo $date->getDate('Y-m-d'); //2024-05-01
```

### Add year to date

[](#add-year-to-date)

```
$date->addYear($years)
```

Subtract
--------

[](#subtract)

### Subtract second from date

[](#subtract-second-from-date)

```
$date->subSecond($seconds)
```

### Subtract minute from date

[](#subtract-minute-from-date)

```
$date->subMinute($minutes)
```

### Subtract hours from date

[](#subtract-hours-from-date)

```
$date->subHour($hours)
```

### Subtract day from date

[](#subtract-day-from-date)

```
$date->subDay($days)
```

### Subtract weeks from date

[](#subtract-weeks-from-date)

```
$date->subWeek($weeks)
```

### Subtract month from date

[](#subtract-month-from-date)

```
$date->subMonth($months)
```

### Subtract year from date

[](#subtract-year-from-date)

```
$date->subYear($years)
```

Check
-----

[](#check)

### Date is before

[](#date-is-before)

```
$date->isBefore($date)
```

### Date is after

[](#date-is-after)

```
$date->isAfter($date)
```

### Is equal

[](#is-equal)

```
$date->isEqual($date)
```

### Start of day

[](#start-of-day)

```
$date->startOfDay()
```

### End of day

[](#end-of-day)

```
$date->endOfDay()
```

### Is weekend

[](#is-weekend)

```
$date->isWeekend()
```

### Is weekday

[](#is-weekday)

```
$date->isWeekday()
```

### is leap year

[](#is-leap-year)

```
$date->isLeapYear()
```

Utils
=====

[](#utils)

Get date month difference
-------------------------

[](#get-date-month-difference)

```
\Krzysztofzylka\Date\DateUtils::dateMonthDifference($dateFrom, $dateTo)
```

Get simple date
---------------

[](#get-simple-date)

```
\Krzysztofzylka\Date\DateUtils::getSimpleDate()
\Krzysztofzylka\Date\DateUtils::getSimpleDate(true) //with microseconds
```

Get seconds to date
-------------------

[](#get-seconds-to-date)

```
\Krzysztofzylka\Date\DateUtils::getSecondsToDate($seconds)
```

Date difference
---------------

[](#date-difference-1)

```
$date = \Krzysztofzylka\Date\Date::create();
$date2 = \Krzysztofzylka\Date\Date::create($date)->addDay(1);
var_dump(\Krzysztofzylka\Date\DateUtils::getDifference($date, $date2)); //['years' => 0, 'months' => 0, 'days' => 1, 'hours' => 0, 'minutes' => 0, 'seconds' => 0]
```

Polish Locale
=============

[](#polish-locale)

Klasa `PolishLocale` zawiera polskie nazwy miesięcy i dni tygodnia w różnych formatach.

Stałe
-----

[](#stałe)

### Miesiące

[](#miesiące)

```
use Krzysztofzylka\Date\Locale\PolishLocale;

// Skrócone nazwy miesięcy
PolishLocale::MONTHS_SHORT; // [1 => 'Sty', 2 => 'Lut', ...]

// Pełne nazwy miesięcy
PolishLocale::MONTHS_LONG; // [1 => 'Styczeń', 2 => 'Luty', ...]
```

### Dni tygodnia (Niedziela = 0)

[](#dni-tygodnia-niedziela--0)

```
// Skrócone nazwy dni (0=Sobota, 1=Niedziela, 2=Poniedziałek, ...)
PolishLocale::WEEKDAYS_SHORT; // [2 => 'Pon', 3 => 'Wto', ...]

// Pełne nazwy dni (0=Sobota, 1=Niedziela, 2=Poniedziałek, ...)
PolishLocale::WEEKDAYS_LONG; // [2 => 'Poniedziałek', 3 => 'Wtorek', ...]
```

### Dni tygodnia (Poniedziałek = 0)

[](#dni-tygodnia-poniedziałek--0)

```
// Skrócone nazwy dni (0=Poniedziałek, 1=Wtorek, ...)
PolishLocale::WEEKDAYS_SHORT_MONDAY_ZERO; // [0 => 'Pon', 1 => 'Wto', ...]

// Pełne nazwy dni (0=Poniedziałek, 1=Wtorek, ...)
PolishLocale::WEEKDAYS_LONG_MONDAY_ZERO; // [0 => 'Poniedziałek', 1 => 'Wtorek', ...]
```

Metody
------

[](#metody)

### Pobieranie nazwy miesiąca

[](#pobieranie-nazwy-miesiąca)

```
use Krzysztofzylka\Date\Locale\PolishLocale;

echo PolishLocale::getMonthName(1); // "Styczeń"
echo PolishLocale::getMonthName(1, true); // "Sty"
```

### Pobieranie nazwy dnia (Niedziela = 0)

[](#pobieranie-nazwy-dnia-niedziela--0)

```
echo PolishLocale::getDayName(1); // "Niedziela"
echo PolishLocale::getDayName(2, true); // "Pon"
```

### Pobieranie nazwy dnia (Poniedziałek = 0)

[](#pobieranie-nazwy-dnia-poniedziałek--0)

```
echo PolishLocale::getDayNameMondayZero(0); // "Poniedziałek"
echo PolishLocale::getDayNameMondayZero(0, true); // "Pon"
```

### Konwersja między konwencjami numerowania

[](#konwersja-między-konwencjami-numerowania)

```
// Z Niedziela=0 na Poniedziałek=0
$mondayZero = PolishLocale::convertSundayZeroToMondayZero(1); // 0 (Poniedziałek)

// Z Poniedziałek=0 na Niedziela=0
$sundayZero = PolishLocale::convertMondayZeroToSundayZero(0); // 1 (Poniedziałek)
```

Przykład użycia
---------------

[](#przykład-użycia)

```
use Krzysztofzylka\Date\Date;
use Krzysztofzylka\Date\Locale\PolishLocale;

$date = Date::create('2024-03-15'); // Piątek
$dayOfWeek = (int)$date->getDate('w'); // 5 (Piątek w konwencji Niedziela=0)

echo PolishLocale::getDayName($dayOfWeek); // "Piątek"
echo PolishLocale::getMonthName($date->getMonth()); // "Marzec"
```

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance56

Moderate activity, may be stable

Popularity20

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 75% 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

Every ~159 days

Total

5

Last Release

293d ago

PHP version history (2 changes)1.0.0PHP &gt;=8.0

1.1.0PHP &gt;=7.4

### Community

Maintainers

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

---

Top Contributors

[![krzysztofzylka](https://avatars.githubusercontent.com/u/41385342?v=4)](https://github.com/krzysztofzylka "krzysztofzylka (9 commits)")[![krzysztofzylka-wins](https://avatars.githubusercontent.com/u/291765431?v=4)](https://github.com/krzysztofzylka-wins "krzysztofzylka-wins (3 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/krzysztofzylka-date/health.svg)

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

###  Alternatives

[magyarjeti/laravel-lipsum

Lorem ipsum generator for Laravel Framework

1617.9k](/packages/magyarjeti-laravel-lipsum)

PHPackages © 2026

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