1.1.1 2025-04-08 19:59 UTC

This package is auto-updated.

Last update: 2025-04-08 20:00:37 UTC


README

composer require krzysztofzylka/date

Create instance

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

Static methods

Create instance

\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

Gets

Get time

$date->getTime()

Get date

$date->getDate()

Get day

$date->getDay()

Get month

$date->getMonth()

Get year

$date->getYear()

Get ISO8601 date format

$date->getISO8601()

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

$date->getWeekdayDifference($date)

Sets

Set date

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

Format

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

$date->format($format)

Add

Add second to date

$date->addSecond($seconds)

Add minute to date

$date->addMinute($minutes)

Add hours to date

$date->addHour($hours)

Add day to date

$date->addDay($days)

Add weeks to date

$date->addWeek($weeks)

Add month to date

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

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

$date->addYear($years)

Subtract

Subtract second from date

$date->subSecond($seconds)

Subtract minute from date

$date->subMinute($minutes)

Subtract hours from date

$date->subHour($hours)

Subtract day from date

$date->subDay($days)

Subtract weeks from date

$date->subWeek($weeks)

Subtract month from date

$date->subMonth($months)

Subtract year from date

$date->subYear($years)

Check

Date is before

$date->isBefore($date)

Date is after

$date->isAfter($date)

Is equal

$date->isEqual($date)

Start of day

$date->startOfDay()

End of day

$date->endOfDay()

Is weekend

$date->isWeekend()

Is weekday

$date->isWeekday()

is leap year

$date->isLeapYear()

Utils

Get date month difference

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

Get simple date

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

Get seconds to date

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

Date difference

$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]