/
githubmirror
/
framework
Обзор
Документация
Войти
/
githubmirror
/
framework
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
13.x
src/Illuminate/Support/Carbon.php
80 строк
2 KB
Lucas Michot
Add overflow option to Carbon plus and minus (#59509)
03 апр 2026, 18:17
Не верифицирован
03 апр 2026, 18:17
d34c8a7
Код
Авторство
О чём код?
<?php namespace Illuminate\Support; use Carbon\Carbon as BaseCarbon; use Carbon\CarbonImmutable as BaseCarbonImmutable; use Illuminate\Support\Traits\Conditionable; use Illuminate\Support\Traits\Dumpable; use Ramsey\Uuid\Uuid; use Symfony\Component\Uid\Ulid; class Carbon extends BaseCarbon { use Conditionable, Dumpable; /** * {@inheritdoc} */ public static function setTestNow(mixed $testNow = null): void { BaseCarbon::setTestNow($testNow); BaseCarbonImmutable::setTestNow($testNow); } /** * Create a Carbon instance from a given ordered UUID or ULID. */ public static function createFromId(Uuid|Ulid|string $id): static { if (is_string($id)) { $id = Ulid::isValid($id) ? Ulid::fromString($id) : Uuid::fromString($id); } return static::createFromInterface($id->getDateTime()); } /** * Get the current date / time plus a given amount of time. */ public function plus( int $years = 0, int $months = 0, int $weeks = 0, int $days = 0, int $hours = 0, int $minutes = 0, int $seconds = 0, int $microseconds = 0, ?bool $overflow = null ): static { return $this->add('years', $years, $overflow) ->add('months', $months, $overflow) ->add(" $weeks weeks $days days $hours hours $minutes minutes $seconds seconds $microseconds microseconds "); } /** * Get the current date / time minus a given amount of time. */ public function minus( int $years = 0, int $months = 0, int $weeks = 0, int $days = 0, int $hours = 0, int $minutes = 0, int $seconds = 0, int $microseconds = 0, ?bool $overflow = null ): static { return $this->sub('years', $years, $overflow) ->sub('months', $months, $overflow) ->sub(" $weeks weeks $days days $hours hours $minutes minutes $seconds seconds $microseconds microseconds "); } }