.phpstorm.meta.php 0000644 00000001740 14753612052 0010143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\MessageFormatter;
use Symfony\Component\Translation\Formatter\MessageFormatterInterface;
if (!class_exists(LazyMessageFormatter::class, false)) {
abstract class LazyMessageFormatter implements MessageFormatterInterface
{
public function format(string $message, string $locale, array $parameters = []): string
{
return $this->formatter->format(
$message,
$this->transformLocale($locale),
$parameters
);
}
}
}
lazy/Carbon/MessageFormatter/MessageFormatterMapperWeakType.php 0000644 00000002162 14753612052 0021005 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\MessageFormatter;
use Symfony\Component\Translation\Formatter\ChoiceMessageFormatterInterface;
use Symfony\Component\Translation\Formatter\MessageFormatterInterface;
if (!class_exists(LazyMessageFormatter::class, false)) {
abstract class LazyMessageFormatter implements MessageFormatterInterface, ChoiceMessageFormatterInterface
{
abstract protected function transformLocale(?string $locale): ?string;
public function format($message, $locale, array $parameters = [])
{
return $this->formatter->format(
$message,
$this->transformLocale($locale),
$parameters
);
}
public function choiceFormat($message, $number, $locale, array $parameters = [])
{
return $this->formatter->choiceFormat($message, $number, $locale, $parameters);
}
}
}
lazy/Carbon/ProtectedDatePeriod.php 0000644 00000003571 14753612052 0013345 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use DatePeriod;
if (!class_exists(DatePeriodBase::class, false)) {
class DatePeriodBase extends DatePeriod
{
/**
* Period start in PHP < 8.2.
*
* @var CarbonInterface
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period start.
*/
protected $start;
/**
* Period end in PHP < 8.2.
*
* @var CarbonInterface|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period end.
*/
protected $end;
/**
* Period current iterated date in PHP < 8.2.
*
* @var CarbonInterface|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period current iterated date.
*/
protected $current;
/**
* Period interval in PHP < 8.2.
*
* @var CarbonInterval|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period interval.
*/
protected $interval;
/**
* Period recurrences in PHP < 8.2.
*
* @var int|float|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period recurrences.
*/
protected $recurrences;
/**
* Period start included option in PHP < 8.2.
*
* @var bool
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period start included option.
*/
protected $include_start_date;
}
}
lazy/Carbon/TranslatorStrongType.php 0000644 00000003246 14753612052 0013642 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Symfony\Component\Translation\MessageCatalogueInterface;
if (!class_exists(LazyTranslator::class, false)) {
class LazyTranslator extends AbstractTranslator implements TranslatorStrongTypeInterface
{
public function trans(?string $id, array $parameters = [], ?string $domain = null, ?string $locale = null): string
{
return $this->translate($id, $parameters, $domain, $locale);
}
public function getFromCatalogue(MessageCatalogueInterface $catalogue, string $id, string $domain = 'messages')
{
$messages = $this->getPrivateProperty($catalogue, 'messages');
if (isset($messages[$domain.MessageCatalogueInterface::INTL_DOMAIN_SUFFIX][$id])) {
return $messages[$domain.MessageCatalogueInterface::INTL_DOMAIN_SUFFIX][$id];
}
if (isset($messages[$domain][$id])) {
return $messages[$domain][$id];
}
$fallbackCatalogue = $this->getPrivateProperty($catalogue, 'fallbackCatalogue');
if ($fallbackCatalogue !== null) {
return $this->getFromCatalogue($fallbackCatalogue, $id, $domain);
}
return $id;
}
private function getPrivateProperty($instance, string $field)
{
return (function (string $field) {
return $this->$field;
})->call($instance, $field);
}
}
}
lazy/Carbon/TranslatorWeakType.php 0000644 00000001455 14753612052 0013255 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
if (!class_exists(LazyTranslator::class, false)) {
class LazyTranslator extends AbstractTranslator
{
/**
* Returns the translation.
*
* @param string|null $id
* @param array $parameters
* @param string|null $domain
* @param string|null $locale
*
* @return string
*/
public function trans($id, array $parameters = [], $domain = null, $locale = null)
{
return $this->translate($id, $parameters, $domain, $locale);
}
}
}
lazy/Carbon/UnprotectedDatePeriod.php 0000644 00000000572 14753612052 0013706 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use DatePeriod;
if (!class_exists(DatePeriodBase::class, false)) {
class DatePeriodBase extends DatePeriod
{
}
}
readme.md 0000644 00000035560 14753612052 0006341 0 ustar 00 # Carbon
[](https://packagist.org/packages/nesbot/carbon)
[](https://packagist.org/packages/nesbot/carbon)
[](https://github.com/briannesbitt/Carbon/actions)
[](https://codecov.io/github/briannesbitt/Carbon?branch=master)
An international PHP extension for DateTime. [https://carbon.nesbot.com](https://carbon.nesbot.com)
```php
toDateTimeString());
printf("Right now in Vancouver is %s", Carbon::now('America/Vancouver')); //implicit __toString()
$tomorrow = Carbon::now()->addDay();
$lastWeek = Carbon::now()->subWeek();
$officialDate = Carbon::now()->toRfc2822String();
$howOldAmI = Carbon::createFromDate(1975, 5, 21)->age;
$noonTodayLondonTime = Carbon::createFromTime(12, 0, 0, 'Europe/London');
$internetWillBlowUpOn = Carbon::create(2038, 01, 19, 3, 14, 7, 'GMT');
// Don't really want this to happen so mock now
Carbon::setTestNow(Carbon::createFromDate(2000, 1, 1));
// comparisons are always done in UTC
if (Carbon::now()->gte($internetWillBlowUpOn)) {
die();
}
// Phew! Return to normal behaviour
Carbon::setTestNow();
if (Carbon::now()->isWeekend()) {
echo 'Party!';
}
// Over 200 languages (and over 500 regional variants) supported:
echo Carbon::now()->subMinutes(2)->diffForHumans(); // '2 minutes ago'
echo Carbon::now()->subMinutes(2)->locale('zh_CN')->diffForHumans(); // '2分钟前'
echo Carbon::parse('2019-07-23 14:51')->isoFormat('LLLL'); // 'Tuesday, July 23, 2019 2:51 PM'
echo Carbon::parse('2019-07-23 14:51')->locale('fr_FR')->isoFormat('LLLL'); // 'mardi 23 juillet 2019 14:51'
// ... but also does 'from now', 'after' and 'before'
// rolling up to seconds, minutes, hours, days, months, years
$daysSinceEpoch = Carbon::createFromTimestamp(0)->diffInDays(); // something such as:
// 19817.6771
$daysUntilInternetBlowUp = $internetWillBlowUpOn->diffInDays(); // Negative value since it's in the future:
// -5037.4560
// Without parameter, difference is calculated from now, but doing $a->diff($b)
// it will count time from $a to $b.
Carbon::createFromTimestamp(0)->diffInDays($internetWillBlowUpOn); // 24855.1348
```
## Installation
### With Composer
```
$ composer require nesbot/carbon
```
```json
{
"require": {
"nesbot/carbon": "^3"
}
}
```
```php
### Translators
[Thanks to people helping us to translate Carbon in so many languages](https://carbon.nesbot.com/contribute/translators/)
### Sponsors
Support this project by becoming a sponsor. Your logo will show up here with a link to your website.
[[See all](https://carbon.nesbot.com/#sponsors)]
[[Become a sponsor via OpenCollective](https://opencollective.com/Carbon#sponsor)]
[[Become a sponsor via GitHub](https://github.com/sponsors/kylekatarnls)]
### Backers
Thank you to all our backers! 🙏
[[Become a backer](https://opencollective.com/Carbon#backer)]
## Carbon for enterprise
Available as part of the Tidelift Subscription.
The maintainers of ``Carbon`` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=enterprise&utm_term=repo)
sponsors.php 0000644 00000015412 14753612052 0007153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Carbon\CarbonImmutable;
require_once __DIR__.'/vendor/autoload.php';
function getMaxHistoryMonthsByAmount($amount): int
{
if ($amount >= 50) {
return 6;
}
if ($amount >= 20) {
return 4;
}
return 2;
}
function getHtmlAttribute($rawValue): string
{
return str_replace(
['', "\r"],
'',
trim(htmlspecialchars((string) $rawValue), " \n\r\t\v\0"),
);
}
function getOpenCollectiveSponsors(): string
{
$customSponsorImages = [
// For consistency and equity among sponsors, as of now, we kindly ask our sponsors
// to provide an image having a width/height ratio between 1/1 and 2/1.
// By default, we'll show the member picture from OpenCollective, and will resize it if bigger
// int(OpenCollective.MemberId) => ImageURL
];
$members = json_decode(file_get_contents('https://opencollective.com/carbon/members/all.json'), true);
$members[] = [
'MemberId' => 1,
'createdAt' => '2019-01-01 02:00',
'type' => 'ORGANIZATION',
'role' => 'BACKER',
'tier' => 'backer+',
'isActive' => true,
'totalAmountDonated' => 1000,
'currency' => 'USD',
'lastTransactionAt' => CarbonImmutable::now()->format('Y-m-d').' 02:00',
'lastTransactionAmount' => 25,
'profile' => 'https://tidelift.com/',
'name' => 'Tidelift',
'description' => 'Get professional support for Carbon',
'image' => 'https://carbon.nesbot.com/tidelift-brand.png',
'website' => 'https://tidelift.com/subscription/pkg/packagist-nesbot-carbon?utm_source=packagist-nesbot-carbon&utm_medium=referral&utm_campaign=docs',
];
$list = array_filter($members, static fn (array $member): bool => $member['totalAmountDonated'] > 3 && $member['role'] !== 'HOST' && (
$member['totalAmountDonated'] > 100 ||
$member['lastTransactionAt'] > CarbonImmutable::now()
->subMonthsNoOverflow(getMaxHistoryMonthsByAmount($member['lastTransactionAmount']))
->format('Y-m-d h:i') ||
$member['isActive'] && $member['lastTransactionAmount'] >= 30
));
$list = array_map(static function (array $member): array {
$createdAt = CarbonImmutable::parse($member['createdAt']);
$lastTransactionAt = CarbonImmutable::parse($member['lastTransactionAt']);
if ($createdAt->format('d H:i:s.u') > $lastTransactionAt->format('d H:i:s.u')) {
$createdAt = $createdAt
->setDay($lastTransactionAt->day)
->modify($lastTransactionAt->format('H:i:s.u'));
}
$monthlyContribution = (float) ($member['totalAmountDonated'] / ceil($createdAt->floatDiffInMonths()));
if (
$lastTransactionAt->isAfter('last month') &&
$member['lastTransactionAmount'] > $monthlyContribution
) {
$monthlyContribution = (float) $member['lastTransactionAmount'];
}
if ($lastTransactionAt->isBefore('-75 days')) {
$days = min(120, $lastTransactionAt->diffInDays('now') - 70);
$monthlyContribution *= 1 - $days / 240;
}
$yearlyContribution = (float) ($member['totalAmountDonated'] / max(1, $createdAt->floatDiffInYears()));
$status = null;
$rank = 0;
if ($monthlyContribution > 29 || $yearlyContribution > 700) {
$status = 'sponsor';
$rank = 4;
} elseif ($monthlyContribution > 14.5 || $yearlyContribution > 500) {
$status = 'backerPlus';
$rank = 3;
} elseif ($monthlyContribution > 4.5 || $yearlyContribution > 80) {
$status = 'backer';
$rank = 2;
} elseif ($member['totalAmountDonated'] > 0) {
$status = 'helper';
$rank = 1;
}
return array_merge($member, [
'star' => ($monthlyContribution > 98 || $yearlyContribution > 800),
'status' => $status,
'rank' => $rank,
'monthlyContribution' => $monthlyContribution,
'yearlyContribution' => $yearlyContribution,
]);
}, $list);
usort($list, static function (array $a, array $b): int {
return ($b['star'] <=> $a['star'])
?: ($b['rank'] <=> $a['rank'])
?: ($b['monthlyContribution'] <=> $a['monthlyContribution'])
?: ($b['totalAmountDonated'] <=> $a['totalAmountDonated']);
});
$membersByUrl = [];
$output = '';
foreach ($list as $member) {
$url = $member['website'] ?? $member['profile'];
if (isset($membersByUrl[$url]) || !\in_array($member['status'], ['sponsor', 'backerPlus'], true)) {
continue;
}
$membersByUrl[$url] = $member;
$href = htmlspecialchars($url);
$src = $customSponsorImages[$member['MemberId'] ?? ''] ?? $member['image'] ?? (strtr($member['profile'], ['https://opencollective.com/' => 'https://images.opencollective.com/']).'/avatar/256.png');
[$x, $y] = @getimagesize($src) ?: [0, 0];
$validImage = ($x && $y);
$src = $validImage ? htmlspecialchars($src) : 'https://opencollective.com/static/images/default-guest-logo.svg';
$height = match ($member['status']) {
'sponsor' => 64,
'backerPlus' => 42,
'backer' => 32,
default => 24,
};
$rel = match ($member['status']) {
'sponsor', 'backerPlus' => '',
default => ' rel="sponsored"',
};
$width = min($height * 2, $validImage ? round($x * $height / $y) : $height);
if (!str_contains($href, 'utm_source') && !preg_match('/^https?:\/\/onlinekasyno-polis\.pl(\/.*)?$/', $href)) {
$href .= (!str_contains($href, '?') ? '?' : '&').'utm_source=opencollective&utm_medium=github&utm_campaign=Carbon';
}
$title = getHtmlAttribute(($member['description'] ?? null) ?: $member['name']);
$alt = getHtmlAttribute($member['name']);
if ($member['star']) {
$width *= 1.5;
$height *= 1.5;
}
$output .= "\n".''.
'
'.
'';
}
return $output;
}
file_put_contents('readme.md', preg_replace_callback(
'/()[\s\S]+()/',
static function (array $match): string {
return $match[1].getOpenCollectiveSponsors().$match[2];
},
file_get_contents('readme.md'),
));
src/Carbon/AbstractTranslator.php 0000644 00000026075 14753612052 0013104 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Carbon\MessageFormatter\MessageFormatterMapper;
use Closure;
use ReflectionException;
use ReflectionFunction;
use Symfony\Component\Translation;
use Symfony\Component\Translation\Formatter\MessageFormatterInterface;
use Symfony\Component\Translation\Loader\ArrayLoader;
abstract class AbstractTranslator extends Translation\Translator
{
public const REGION_CODE_LENGTH = 2;
/**
* Translator singletons for each language.
*
* @var array
*/
protected static array $singletons = [];
/**
* List of custom localized messages.
*
* @var array
*/
protected array $messages = [];
/**
* List of custom directories that contain translation files.
*
* @var string[]
*/
protected array $directories = [];
/**
* Set to true while constructing.
*/
protected bool $initializing = false;
/**
* List of locales aliases.
*
* @var array
*/
protected array $aliases = [
'me' => 'sr_Latn_ME',
'scr' => 'sh',
];
/**
* Return a singleton instance of Translator.
*
* @param string|null $locale optional initial locale ("en" - english by default)
*
* @return static
*/
public static function get(?string $locale = null): static
{
$locale = $locale ?: 'en';
$key = static::class === Translator::class ? $locale : static::class.'|'.$locale;
$count = \count(static::$singletons);
// Remember only the last 10 translators created
if ($count > 10) {
foreach (\array_slice(array_keys(static::$singletons), 0, $count - 10) as $index) {
unset(static::$singletons[$index]);
}
}
static::$singletons[$key] ??= new static($locale);
return static::$singletons[$key];
}
public function __construct($locale, ?MessageFormatterInterface $formatter = null, $cacheDir = null, $debug = false)
{
$this->initialize($locale, $formatter, $cacheDir, $debug);
}
/**
* Returns the list of directories translation files are searched in.
*/
public function getDirectories(): array
{
return $this->directories;
}
/**
* Set list of directories translation files are searched in.
*
* @param array $directories new directories list
*
* @return $this
*/
public function setDirectories(array $directories): static
{
$this->directories = $directories;
return $this;
}
/**
* Add a directory to the list translation files are searched in.
*
* @param string $directory new directory
*
* @return $this
*/
public function addDirectory(string $directory): static
{
$this->directories[] = $directory;
return $this;
}
/**
* Remove a directory from the list translation files are searched in.
*
* @param string $directory directory path
*
* @return $this
*/
public function removeDirectory(string $directory): static
{
$search = rtrim(strtr($directory, '\\', '/'), '/');
return $this->setDirectories(array_filter(
$this->getDirectories(),
static fn ($item) => rtrim(strtr($item, '\\', '/'), '/') !== $search,
));
}
/**
* Reset messages of a locale (all locale if no locale passed).
* Remove custom messages and reload initial messages from matching
* file in Lang directory.
*/
public function resetMessages(?string $locale = null): bool
{
if ($locale === null) {
$this->messages = [];
return true;
}
foreach ($this->getDirectories() as $directory) {
$data = @include \sprintf('%s/%s.php', rtrim($directory, '\\/'), $locale);
if ($data !== false) {
$this->messages[$locale] = $data;
$this->addResource('array', $this->messages[$locale], $locale);
return true;
}
}
return false;
}
/**
* Returns the list of files matching a given locale prefix (or all if empty).
*
* @param string $prefix prefix required to filter result
*
* @return array
*/
public function getLocalesFiles(string $prefix = ''): array
{
$files = [];
foreach ($this->getDirectories() as $directory) {
$directory = rtrim($directory, '\\/');
foreach (glob("$directory/$prefix*.php") as $file) {
$files[] = $file;
}
}
return array_unique($files);
}
/**
* Returns the list of internally available locales and already loaded custom locales.
* (It will ignore custom translator dynamic loading.)
*
* @param string $prefix prefix required to filter result
*
* @return array
*/
public function getAvailableLocales(string $prefix = ''): array
{
$locales = [];
foreach ($this->getLocalesFiles($prefix) as $file) {
$locales[] = substr($file, strrpos($file, '/') + 1, -4);
}
return array_unique(array_merge($locales, array_keys($this->messages)));
}
protected function translate(?string $id, array $parameters = [], ?string $domain = null, ?string $locale = null): string
{
if ($domain === null) {
$domain = 'messages';
}
$catalogue = $this->getCatalogue($locale);
$format = $this instanceof TranslatorStrongTypeInterface
? $this->getFromCatalogue($catalogue, (string) $id, $domain)
: $this->getCatalogue($locale)->get((string) $id, $domain); // @codeCoverageIgnore
if ($format instanceof Closure) {
// @codeCoverageIgnoreStart
try {
$count = (new ReflectionFunction($format))->getNumberOfRequiredParameters();
} catch (ReflectionException) {
$count = 0;
}
// @codeCoverageIgnoreEnd
return $format(
...array_values($parameters),
...array_fill(0, max(0, $count - \count($parameters)), null)
);
}
return parent::trans($id, $parameters, $domain, $locale);
}
/**
* Init messages language from matching file in Lang directory.
*
* @param string $locale
*
* @return bool
*/
protected function loadMessagesFromFile(string $locale): bool
{
return isset($this->messages[$locale]) || $this->resetMessages($locale);
}
/**
* Set messages of a locale and take file first if present.
*
* @param string $locale
* @param array $messages
*
* @return $this
*/
public function setMessages(string $locale, array $messages): static
{
$this->loadMessagesFromFile($locale);
$this->addResource('array', $messages, $locale);
$this->messages[$locale] = array_merge(
$this->messages[$locale] ?? [],
$messages
);
return $this;
}
/**
* Set messages of the current locale and take file first if present.
*
* @param array $messages
*
* @return $this
*/
public function setTranslations(array $messages): static
{
return $this->setMessages($this->getLocale(), $messages);
}
/**
* Get messages of a locale, if none given, return all the
* languages.
*/
public function getMessages(?string $locale = null): array
{
return $locale === null ? $this->messages : $this->messages[$locale];
}
/**
* Set the current translator locale and indicate if the source locale file exists
*
* @param string $locale locale ex. en
*/
public function setLocale($locale): void
{
$locale = preg_replace_callback('/[-_]([a-z]{2,}|\d{2,})/', function ($matches) {
// _2-letters or YUE is a region, _3+-letters is a variant
$upper = strtoupper($matches[1]);
if ($upper === 'YUE' || $upper === 'ISO' || \strlen($upper) <= static::REGION_CODE_LENGTH) {
return "_$upper";
}
return '_'.ucfirst($matches[1]);
}, strtolower($locale));
$previousLocale = $this->getLocale();
if ($previousLocale === $locale && isset($this->messages[$locale])) {
return;
}
unset(static::$singletons[$previousLocale]);
if ($locale === 'auto') {
$completeLocale = setlocale(LC_TIME, '0');
$locale = preg_replace('/^([^_.-]+).*$/', '$1', $completeLocale);
$locales = $this->getAvailableLocales($locale);
$completeLocaleChunks = preg_split('/[_.-]+/', $completeLocale);
$getScore = static fn ($language) => self::compareChunkLists(
$completeLocaleChunks,
preg_split('/[_.-]+/', $language),
);
usort($locales, static fn ($first, $second) => $getScore($second) <=> $getScore($first));
$locale = $locales[0];
}
if (isset($this->aliases[$locale])) {
$locale = $this->aliases[$locale];
}
// If subtag (ex: en_CA) first load the macro (ex: en) to have a fallback
if (str_contains($locale, '_') &&
$this->loadMessagesFromFile($macroLocale = preg_replace('/^([^_]+).*$/', '$1', $locale))
) {
parent::setLocale($macroLocale);
}
if (!$this->loadMessagesFromFile($locale) && !$this->initializing) {
return;
}
parent::setLocale($locale);
}
/**
* Show locale on var_dump().
*
* @return array
*/
public function __debugInfo()
{
return [
'locale' => $this->getLocale(),
];
}
public function __serialize(): array
{
return [
'locale' => $this->getLocale(),
];
}
public function __unserialize(array $data): void
{
$this->initialize($data['locale'] ?? 'en');
}
private function initialize($locale, ?MessageFormatterInterface $formatter = null, $cacheDir = null, $debug = false): void
{
parent::setLocale($locale);
$this->initializing = true;
$this->directories = [__DIR__.'/Lang'];
$this->addLoader('array', new ArrayLoader());
parent::__construct($locale, new MessageFormatterMapper($formatter), $cacheDir, $debug);
$this->initializing = false;
}
private static function compareChunkLists($referenceChunks, $chunks)
{
$score = 0;
foreach ($referenceChunks as $index => $chunk) {
if (!isset($chunks[$index])) {
$score++;
continue;
}
if (strtolower($chunks[$index]) === strtolower($chunk)) {
$score += 10;
}
}
return $score;
}
}
src/Carbon/Callback.php 0000644 00000006057 14753612052 0010761 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Closure;
use DateInterval;
use DatePeriod;
use DateTime;
use DateTimeInterface;
use DateTimeZone;
use ReflectionFunction;
use ReflectionNamedType;
use ReflectionType;
final class Callback
{
private ?ReflectionFunction $function;
private function __construct(private readonly Closure $closure)
{
}
public static function fromClosure(Closure $closure): self
{
return new self($closure);
}
public static function parameter(mixed $closure, mixed $value, string|int $index = 0): mixed
{
if ($closure instanceof Closure) {
return self::fromClosure($closure)->prepareParameter($value, $index);
}
return $value;
}
public function getReflectionFunction(): ReflectionFunction
{
return $this->function ??= new ReflectionFunction($this->closure);
}
public function prepareParameter(mixed $value, string|int $index = 0): mixed
{
$type = $this->getParameterType($index);
if (!($type instanceof ReflectionNamedType)) {
return $value;
}
$name = $type->getName();
if ($name === CarbonInterface::class) {
$name = $value instanceof DateTime ? Carbon::class : CarbonImmutable::class;
}
if (!class_exists($name) || is_a($value, $name)) {
return $value;
}
$class = $this->getPromotedClass($value);
if ($class && is_a($name, $class, true)) {
return $name::instance($value);
}
return $value;
}
public function call(mixed ...$arguments): mixed
{
foreach ($arguments as $index => &$value) {
if ($this->getPromotedClass($value)) {
$value = $this->prepareParameter($value, $index);
}
}
return ($this->closure)(...$arguments);
}
private function getParameterType(string|int $index): ?ReflectionType
{
$parameters = $this->getReflectionFunction()->getParameters();
if (\is_int($index)) {
return ($parameters[$index] ?? null)?->getType();
}
foreach ($parameters as $parameter) {
if ($parameter->getName() === $index) {
return $parameter->getType();
}
}
return null;
}
/** @return class-string|null */
private function getPromotedClass(mixed $value): ?string
{
if ($value instanceof DateTimeInterface) {
return CarbonInterface::class;
}
if ($value instanceof DateInterval) {
return CarbonInterval::class;
}
if ($value instanceof DatePeriod) {
return CarbonPeriod::class;
}
if ($value instanceof DateTimeZone) {
return CarbonTimeZone::class;
}
return null;
}
}
src/Carbon/Carbon.php 0000644 00000471240 14753612052 0010471 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Carbon\Traits\Date;
use DateTime;
use DateTimeInterface;
/**
* A simple API extension for DateTime.
*
*
*
* @property string $localeDayOfWeek the day of week in current locale
* @property string $shortLocaleDayOfWeek the abbreviated day of week in current locale
* @property string $localeMonth the month in current locale
* @property string $shortLocaleMonth the abbreviated month in current locale
* @property int $year
* @property int $yearIso
* @property int $month
* @property int $day
* @property int $hour
* @property int $minute
* @property int $second
* @property int $micro
* @property int $microsecond
* @property int $dayOfWeekIso 1 (for Monday) through 7 (for Sunday)
* @property int|float|string $timestamp seconds since the Unix Epoch
* @property string $englishDayOfWeek the day of week in English
* @property string $shortEnglishDayOfWeek the abbreviated day of week in English
* @property string $englishMonth the month in English
* @property string $shortEnglishMonth the abbreviated month in English
* @property int $milliseconds
* @property int $millisecond
* @property int $milli
* @property int $week 1 through 53
* @property int $isoWeek 1 through 53
* @property int $weekYear year according to week format
* @property int $isoWeekYear year according to ISO week format
* @property int $age does a diffInYears() with default parameters
* @property int $offset the timezone offset in seconds from UTC
* @property int $offsetMinutes the timezone offset in minutes from UTC
* @property int $offsetHours the timezone offset in hours from UTC
* @property CarbonTimeZone $timezone the current timezone
* @property CarbonTimeZone $tz alias of $timezone
* @property int $centuryOfMillennium The value of the century starting from the beginning of the current millennium
* @property int $dayOfCentury The value of the day starting from the beginning of the current century
* @property int $dayOfDecade The value of the day starting from the beginning of the current decade
* @property int $dayOfMillennium The value of the day starting from the beginning of the current millennium
* @property int $dayOfMonth The value of the day starting from the beginning of the current month
* @property int $dayOfQuarter The value of the day starting from the beginning of the current quarter
* @property int $dayOfWeek 0 (for Sunday) through 6 (for Saturday)
* @property int $dayOfYear 1 through 366
* @property int $decadeOfCentury The value of the decade starting from the beginning of the current century
* @property int $decadeOfMillennium The value of the decade starting from the beginning of the current millennium
* @property int $hourOfCentury The value of the hour starting from the beginning of the current century
* @property int $hourOfDay The value of the hour starting from the beginning of the current day
* @property int $hourOfDecade The value of the hour starting from the beginning of the current decade
* @property int $hourOfMillennium The value of the hour starting from the beginning of the current millennium
* @property int $hourOfMonth The value of the hour starting from the beginning of the current month
* @property int $hourOfQuarter The value of the hour starting from the beginning of the current quarter
* @property int $hourOfWeek The value of the hour starting from the beginning of the current week
* @property int $hourOfYear The value of the hour starting from the beginning of the current year
* @property int $microsecondOfCentury The value of the microsecond starting from the beginning of the current century
* @property int $microsecondOfDay The value of the microsecond starting from the beginning of the current day
* @property int $microsecondOfDecade The value of the microsecond starting from the beginning of the current decade
* @property int $microsecondOfHour The value of the microsecond starting from the beginning of the current hour
* @property int $microsecondOfMillennium The value of the microsecond starting from the beginning of the current millennium
* @property int $microsecondOfMillisecond The value of the microsecond starting from the beginning of the current millisecond
* @property int $microsecondOfMinute The value of the microsecond starting from the beginning of the current minute
* @property int $microsecondOfMonth The value of the microsecond starting from the beginning of the current month
* @property int $microsecondOfQuarter The value of the microsecond starting from the beginning of the current quarter
* @property int $microsecondOfSecond The value of the microsecond starting from the beginning of the current second
* @property int $microsecondOfWeek The value of the microsecond starting from the beginning of the current week
* @property int $microsecondOfYear The value of the microsecond starting from the beginning of the current year
* @property int $millisecondOfCentury The value of the millisecond starting from the beginning of the current century
* @property int $millisecondOfDay The value of the millisecond starting from the beginning of the current day
* @property int $millisecondOfDecade The value of the millisecond starting from the beginning of the current decade
* @property int $millisecondOfHour The value of the millisecond starting from the beginning of the current hour
* @property int $millisecondOfMillennium The value of the millisecond starting from the beginning of the current millennium
* @property int $millisecondOfMinute The value of the millisecond starting from the beginning of the current minute
* @property int $millisecondOfMonth The value of the millisecond starting from the beginning of the current month
* @property int $millisecondOfQuarter The value of the millisecond starting from the beginning of the current quarter
* @property int $millisecondOfSecond The value of the millisecond starting from the beginning of the current second
* @property int $millisecondOfWeek The value of the millisecond starting from the beginning of the current week
* @property int $millisecondOfYear The value of the millisecond starting from the beginning of the current year
* @property int $minuteOfCentury The value of the minute starting from the beginning of the current century
* @property int $minuteOfDay The value of the minute starting from the beginning of the current day
* @property int $minuteOfDecade The value of the minute starting from the beginning of the current decade
* @property int $minuteOfHour The value of the minute starting from the beginning of the current hour
* @property int $minuteOfMillennium The value of the minute starting from the beginning of the current millennium
* @property int $minuteOfMonth The value of the minute starting from the beginning of the current month
* @property int $minuteOfQuarter The value of the minute starting from the beginning of the current quarter
* @property int $minuteOfWeek The value of the minute starting from the beginning of the current week
* @property int $minuteOfYear The value of the minute starting from the beginning of the current year
* @property int $monthOfCentury The value of the month starting from the beginning of the current century
* @property int $monthOfDecade The value of the month starting from the beginning of the current decade
* @property int $monthOfMillennium The value of the month starting from the beginning of the current millennium
* @property int $monthOfQuarter The value of the month starting from the beginning of the current quarter
* @property int $monthOfYear The value of the month starting from the beginning of the current year
* @property int $quarterOfCentury The value of the quarter starting from the beginning of the current century
* @property int $quarterOfDecade The value of the quarter starting from the beginning of the current decade
* @property int $quarterOfMillennium The value of the quarter starting from the beginning of the current millennium
* @property int $quarterOfYear The value of the quarter starting from the beginning of the current year
* @property int $secondOfCentury The value of the second starting from the beginning of the current century
* @property int $secondOfDay The value of the second starting from the beginning of the current day
* @property int $secondOfDecade The value of the second starting from the beginning of the current decade
* @property int $secondOfHour The value of the second starting from the beginning of the current hour
* @property int $secondOfMillennium The value of the second starting from the beginning of the current millennium
* @property int $secondOfMinute The value of the second starting from the beginning of the current minute
* @property int $secondOfMonth The value of the second starting from the beginning of the current month
* @property int $secondOfQuarter The value of the second starting from the beginning of the current quarter
* @property int $secondOfWeek The value of the second starting from the beginning of the current week
* @property int $secondOfYear The value of the second starting from the beginning of the current year
* @property int $weekOfCentury The value of the week starting from the beginning of the current century
* @property int $weekOfDecade The value of the week starting from the beginning of the current decade
* @property int $weekOfMillennium The value of the week starting from the beginning of the current millennium
* @property int $weekOfMonth 1 through 5
* @property int $weekOfQuarter The value of the week starting from the beginning of the current quarter
* @property int $weekOfYear ISO-8601 week number of year, weeks starting on Monday
* @property int $yearOfCentury The value of the year starting from the beginning of the current century
* @property int $yearOfDecade The value of the year starting from the beginning of the current decade
* @property int $yearOfMillennium The value of the year starting from the beginning of the current millennium
* @property-read string $latinMeridiem "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
* @property-read string $latinUpperMeridiem "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
* @property-read string $timezoneAbbreviatedName the current timezone abbreviated name
* @property-read string $tzAbbrName alias of $timezoneAbbreviatedName
* @property-read string $dayName long name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortDayName short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $minDayName very short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $monthName long name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortMonthName short name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $meridiem lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read string $upperMeridiem uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read int $noZeroHour current hour from 1 to 24
* @property-read int $isoWeeksInYear 51 through 53
* @property-read int $weekNumberInMonth 1 through 5
* @property-read int $firstWeekDay 0 through 6
* @property-read int $lastWeekDay 0 through 6
* @property-read int $quarter the quarter of this instance, 1 - 4
* @property-read int $decade the decade of this instance
* @property-read int $century the century of this instance
* @property-read int $millennium the millennium of this instance
* @property-read bool $dst daylight savings time indicator, true if DST, false otherwise
* @property-read bool $local checks if the timezone is local, true if local, false otherwise
* @property-read bool $utc checks if the timezone is UTC, true if UTC, false otherwise
* @property-read string $timezoneName the current timezone name
* @property-read string $tzName alias of $timezoneName
* @property-read string $locale locale of the current instance
* @property-read int $centuriesInMillennium The number of centuries contained in the current millennium
* @property-read int $daysInCentury The number of days contained in the current century
* @property-read int $daysInDecade The number of days contained in the current decade
* @property-read int $daysInMillennium The number of days contained in the current millennium
* @property-read int $daysInMonth number of days in the given month
* @property-read int $daysInQuarter The number of days contained in the current quarter
* @property-read int $daysInWeek The number of days contained in the current week
* @property-read int $daysInYear 365 or 366
* @property-read int $decadesInCentury The number of decades contained in the current century
* @property-read int $decadesInMillennium The number of decades contained in the current millennium
* @property-read int $hoursInCentury The number of hours contained in the current century
* @property-read int $hoursInDay The number of hours contained in the current day
* @property-read int $hoursInDecade The number of hours contained in the current decade
* @property-read int $hoursInMillennium The number of hours contained in the current millennium
* @property-read int $hoursInMonth The number of hours contained in the current month
* @property-read int $hoursInQuarter The number of hours contained in the current quarter
* @property-read int $hoursInWeek The number of hours contained in the current week
* @property-read int $hoursInYear The number of hours contained in the current year
* @property-read int $microsecondsInCentury The number of microseconds contained in the current century
* @property-read int $microsecondsInDay The number of microseconds contained in the current day
* @property-read int $microsecondsInDecade The number of microseconds contained in the current decade
* @property-read int $microsecondsInHour The number of microseconds contained in the current hour
* @property-read int $microsecondsInMillennium The number of microseconds contained in the current millennium
* @property-read int $microsecondsInMillisecond The number of microseconds contained in the current millisecond
* @property-read int $microsecondsInMinute The number of microseconds contained in the current minute
* @property-read int $microsecondsInMonth The number of microseconds contained in the current month
* @property-read int $microsecondsInQuarter The number of microseconds contained in the current quarter
* @property-read int $microsecondsInSecond The number of microseconds contained in the current second
* @property-read int $microsecondsInWeek The number of microseconds contained in the current week
* @property-read int $microsecondsInYear The number of microseconds contained in the current year
* @property-read int $millisecondsInCentury The number of milliseconds contained in the current century
* @property-read int $millisecondsInDay The number of milliseconds contained in the current day
* @property-read int $millisecondsInDecade The number of milliseconds contained in the current decade
* @property-read int $millisecondsInHour The number of milliseconds contained in the current hour
* @property-read int $millisecondsInMillennium The number of milliseconds contained in the current millennium
* @property-read int $millisecondsInMinute The number of milliseconds contained in the current minute
* @property-read int $millisecondsInMonth The number of milliseconds contained in the current month
* @property-read int $millisecondsInQuarter The number of milliseconds contained in the current quarter
* @property-read int $millisecondsInSecond The number of milliseconds contained in the current second
* @property-read int $millisecondsInWeek The number of milliseconds contained in the current week
* @property-read int $millisecondsInYear The number of milliseconds contained in the current year
* @property-read int $minutesInCentury The number of minutes contained in the current century
* @property-read int $minutesInDay The number of minutes contained in the current day
* @property-read int $minutesInDecade The number of minutes contained in the current decade
* @property-read int $minutesInHour The number of minutes contained in the current hour
* @property-read int $minutesInMillennium The number of minutes contained in the current millennium
* @property-read int $minutesInMonth The number of minutes contained in the current month
* @property-read int $minutesInQuarter The number of minutes contained in the current quarter
* @property-read int $minutesInWeek The number of minutes contained in the current week
* @property-read int $minutesInYear The number of minutes contained in the current year
* @property-read int $monthsInCentury The number of months contained in the current century
* @property-read int $monthsInDecade The number of months contained in the current decade
* @property-read int $monthsInMillennium The number of months contained in the current millennium
* @property-read int $monthsInQuarter The number of months contained in the current quarter
* @property-read int $monthsInYear The number of months contained in the current year
* @property-read int $quartersInCentury The number of quarters contained in the current century
* @property-read int $quartersInDecade The number of quarters contained in the current decade
* @property-read int $quartersInMillennium The number of quarters contained in the current millennium
* @property-read int $quartersInYear The number of quarters contained in the current year
* @property-read int $secondsInCentury The number of seconds contained in the current century
* @property-read int $secondsInDay The number of seconds contained in the current day
* @property-read int $secondsInDecade The number of seconds contained in the current decade
* @property-read int $secondsInHour The number of seconds contained in the current hour
* @property-read int $secondsInMillennium The number of seconds contained in the current millennium
* @property-read int $secondsInMinute The number of seconds contained in the current minute
* @property-read int $secondsInMonth The number of seconds contained in the current month
* @property-read int $secondsInQuarter The number of seconds contained in the current quarter
* @property-read int $secondsInWeek The number of seconds contained in the current week
* @property-read int $secondsInYear The number of seconds contained in the current year
* @property-read int $weeksInCentury The number of weeks contained in the current century
* @property-read int $weeksInDecade The number of weeks contained in the current decade
* @property-read int $weeksInMillennium The number of weeks contained in the current millennium
* @property-read int $weeksInMonth The number of weeks contained in the current month
* @property-read int $weeksInQuarter The number of weeks contained in the current quarter
* @property-read int $weeksInYear 51 through 53
* @property-read int $yearsInCentury The number of years contained in the current century
* @property-read int $yearsInDecade The number of years contained in the current decade
* @property-read int $yearsInMillennium The number of years contained in the current millennium
*
* @method bool isUtc() Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
* @method bool isLocal() Check if the current instance has non-UTC timezone.
* @method bool isValid() Check if the current instance is a valid date.
* @method bool isDST() Check if the current instance is in a daylight saving time.
* @method bool isSunday() Checks if the instance day is sunday.
* @method bool isMonday() Checks if the instance day is monday.
* @method bool isTuesday() Checks if the instance day is tuesday.
* @method bool isWednesday() Checks if the instance day is wednesday.
* @method bool isThursday() Checks if the instance day is thursday.
* @method bool isFriday() Checks if the instance day is friday.
* @method bool isSaturday() Checks if the instance day is saturday.
* @method bool isSameYear(DateTimeInterface|string $date) Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentYear() Checks if the instance is in the same year as the current moment.
* @method bool isNextYear() Checks if the instance is in the same year as the current moment next year.
* @method bool isLastYear() Checks if the instance is in the same year as the current moment last year.
* @method bool isCurrentMonth() Checks if the instance is in the same month as the current moment.
* @method bool isNextMonth() Checks if the instance is in the same month as the current moment next month.
* @method bool isLastMonth() Checks if the instance is in the same month as the current moment last month.
* @method bool isSameWeek(DateTimeInterface|string $date) Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentWeek() Checks if the instance is in the same week as the current moment.
* @method bool isNextWeek() Checks if the instance is in the same week as the current moment next week.
* @method bool isLastWeek() Checks if the instance is in the same week as the current moment last week.
* @method bool isSameDay(DateTimeInterface|string $date) Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDay() Checks if the instance is in the same day as the current moment.
* @method bool isNextDay() Checks if the instance is in the same day as the current moment next day.
* @method bool isLastDay() Checks if the instance is in the same day as the current moment last day.
* @method bool isSameHour(DateTimeInterface|string $date) Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentHour() Checks if the instance is in the same hour as the current moment.
* @method bool isNextHour() Checks if the instance is in the same hour as the current moment next hour.
* @method bool isLastHour() Checks if the instance is in the same hour as the current moment last hour.
* @method bool isSameMinute(DateTimeInterface|string $date) Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMinute() Checks if the instance is in the same minute as the current moment.
* @method bool isNextMinute() Checks if the instance is in the same minute as the current moment next minute.
* @method bool isLastMinute() Checks if the instance is in the same minute as the current moment last minute.
* @method bool isSameSecond(DateTimeInterface|string $date) Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentSecond() Checks if the instance is in the same second as the current moment.
* @method bool isNextSecond() Checks if the instance is in the same second as the current moment next second.
* @method bool isLastSecond() Checks if the instance is in the same second as the current moment last second.
* @method bool isSameMilli(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMilli() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMilli() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMilli() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMillisecond(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillisecond() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMillisecond() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMillisecond() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMicro(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicro() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicro() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicro() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameMicrosecond(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicrosecond() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicrosecond() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicrosecond() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameDecade(DateTimeInterface|string $date) Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDecade() Checks if the instance is in the same decade as the current moment.
* @method bool isNextDecade() Checks if the instance is in the same decade as the current moment next decade.
* @method bool isLastDecade() Checks if the instance is in the same decade as the current moment last decade.
* @method bool isSameCentury(DateTimeInterface|string $date) Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentCentury() Checks if the instance is in the same century as the current moment.
* @method bool isNextCentury() Checks if the instance is in the same century as the current moment next century.
* @method bool isLastCentury() Checks if the instance is in the same century as the current moment last century.
* @method bool isSameMillennium(DateTimeInterface|string $date) Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillennium() Checks if the instance is in the same millennium as the current moment.
* @method bool isNextMillennium() Checks if the instance is in the same millennium as the current moment next millennium.
* @method bool isLastMillennium() Checks if the instance is in the same millennium as the current moment last millennium.
* @method bool isCurrentQuarter() Checks if the instance is in the same quarter as the current moment.
* @method bool isNextQuarter() Checks if the instance is in the same quarter as the current moment next quarter.
* @method bool isLastQuarter() Checks if the instance is in the same quarter as the current moment last quarter.
* @method $this years(int $value) Set current instance year to the given value.
* @method $this year(int $value) Set current instance year to the given value.
* @method $this setYears(int $value) Set current instance year to the given value.
* @method $this setYear(int $value) Set current instance year to the given value.
* @method $this months(Month|int $value) Set current instance month to the given value.
* @method $this month(Month|int $value) Set current instance month to the given value.
* @method $this setMonths(Month|int $value) Set current instance month to the given value.
* @method $this setMonth(Month|int $value) Set current instance month to the given value.
* @method $this days(int $value) Set current instance day to the given value.
* @method $this day(int $value) Set current instance day to the given value.
* @method $this setDays(int $value) Set current instance day to the given value.
* @method $this setDay(int $value) Set current instance day to the given value.
* @method $this hours(int $value) Set current instance hour to the given value.
* @method $this hour(int $value) Set current instance hour to the given value.
* @method $this setHours(int $value) Set current instance hour to the given value.
* @method $this setHour(int $value) Set current instance hour to the given value.
* @method $this minutes(int $value) Set current instance minute to the given value.
* @method $this minute(int $value) Set current instance minute to the given value.
* @method $this setMinutes(int $value) Set current instance minute to the given value.
* @method $this setMinute(int $value) Set current instance minute to the given value.
* @method $this seconds(int $value) Set current instance second to the given value.
* @method $this second(int $value) Set current instance second to the given value.
* @method $this setSeconds(int $value) Set current instance second to the given value.
* @method $this setSecond(int $value) Set current instance second to the given value.
* @method $this millis(int $value) Set current instance millisecond to the given value.
* @method $this milli(int $value) Set current instance millisecond to the given value.
* @method $this setMillis(int $value) Set current instance millisecond to the given value.
* @method $this setMilli(int $value) Set current instance millisecond to the given value.
* @method $this milliseconds(int $value) Set current instance millisecond to the given value.
* @method $this millisecond(int $value) Set current instance millisecond to the given value.
* @method $this setMilliseconds(int $value) Set current instance millisecond to the given value.
* @method $this setMillisecond(int $value) Set current instance millisecond to the given value.
* @method $this micros(int $value) Set current instance microsecond to the given value.
* @method $this micro(int $value) Set current instance microsecond to the given value.
* @method $this setMicros(int $value) Set current instance microsecond to the given value.
* @method $this setMicro(int $value) Set current instance microsecond to the given value.
* @method $this microseconds(int $value) Set current instance microsecond to the given value.
* @method $this microsecond(int $value) Set current instance microsecond to the given value.
* @method $this setMicroseconds(int $value) Set current instance microsecond to the given value.
* @method $this setMicrosecond(int $value) Set current instance microsecond to the given value.
* @method $this addYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval).
* @method $this addYear() Add one year to the instance (using date interval).
* @method $this subYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval).
* @method $this subYear() Sub one year to the instance (using date interval).
* @method $this addYearsWithOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this addYearWithOverflow() Add one year to the instance (using date interval) with overflow explicitly allowed.
* @method $this subYearsWithOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this subYearWithOverflow() Sub one year to the instance (using date interval) with overflow explicitly allowed.
* @method $this addYearsWithoutOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addYearWithoutOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subYearsWithoutOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subYearWithoutOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addYearsWithNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addYearWithNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subYearsWithNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subYearWithNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addYearsNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addYearNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subYearsNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subYearNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval).
* @method $this addMonth() Add one month to the instance (using date interval).
* @method $this subMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval).
* @method $this subMonth() Sub one month to the instance (using date interval).
* @method $this addMonthsWithOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this addMonthWithOverflow() Add one month to the instance (using date interval) with overflow explicitly allowed.
* @method $this subMonthsWithOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this subMonthWithOverflow() Sub one month to the instance (using date interval) with overflow explicitly allowed.
* @method $this addMonthsWithoutOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMonthWithoutOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMonthsWithoutOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMonthWithoutOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMonthsWithNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMonthWithNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMonthsWithNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMonthWithNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMonthsNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMonthNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMonthsNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMonthNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using date interval).
* @method $this addDay() Add one day to the instance (using date interval).
* @method $this subDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using date interval).
* @method $this subDay() Sub one day to the instance (using date interval).
* @method $this addHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using date interval).
* @method $this addHour() Add one hour to the instance (using date interval).
* @method $this subHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using date interval).
* @method $this subHour() Sub one hour to the instance (using date interval).
* @method $this addMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using date interval).
* @method $this addMinute() Add one minute to the instance (using date interval).
* @method $this subMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using date interval).
* @method $this subMinute() Sub one minute to the instance (using date interval).
* @method $this addSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using date interval).
* @method $this addSecond() Add one second to the instance (using date interval).
* @method $this subSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using date interval).
* @method $this subSecond() Sub one second to the instance (using date interval).
* @method $this addMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method $this addMilli() Add one millisecond to the instance (using date interval).
* @method $this subMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method $this subMilli() Sub one millisecond to the instance (using date interval).
* @method $this addMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method $this addMillisecond() Add one millisecond to the instance (using date interval).
* @method $this subMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method $this subMillisecond() Sub one millisecond to the instance (using date interval).
* @method $this addMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method $this addMicro() Add one microsecond to the instance (using date interval).
* @method $this subMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method $this subMicro() Sub one microsecond to the instance (using date interval).
* @method $this addMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method $this addMicrosecond() Add one microsecond to the instance (using date interval).
* @method $this subMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method $this subMicrosecond() Sub one microsecond to the instance (using date interval).
* @method $this addMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval).
* @method $this addMillennium() Add one millennium to the instance (using date interval).
* @method $this subMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval).
* @method $this subMillennium() Sub one millennium to the instance (using date interval).
* @method $this addMillenniaWithOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this addMillenniumWithOverflow() Add one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method $this subMillenniaWithOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this subMillenniumWithOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method $this addMillenniaWithoutOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMillenniumWithoutOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMillenniaWithoutOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMillenniumWithoutOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMillenniaWithNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMillenniumWithNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMillenniaWithNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMillenniumWithNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMillenniaNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addMillenniumNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMillenniaNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subMillenniumNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval).
* @method $this addCentury() Add one century to the instance (using date interval).
* @method $this subCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval).
* @method $this subCentury() Sub one century to the instance (using date interval).
* @method $this addCenturiesWithOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this addCenturyWithOverflow() Add one century to the instance (using date interval) with overflow explicitly allowed.
* @method $this subCenturiesWithOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this subCenturyWithOverflow() Sub one century to the instance (using date interval) with overflow explicitly allowed.
* @method $this addCenturiesWithoutOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addCenturyWithoutOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subCenturiesWithoutOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subCenturyWithoutOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addCenturiesWithNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addCenturyWithNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subCenturiesWithNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subCenturyWithNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addCenturiesNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addCenturyNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subCenturiesNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subCenturyNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval).
* @method $this addDecade() Add one decade to the instance (using date interval).
* @method $this subDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval).
* @method $this subDecade() Sub one decade to the instance (using date interval).
* @method $this addDecadesWithOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this addDecadeWithOverflow() Add one decade to the instance (using date interval) with overflow explicitly allowed.
* @method $this subDecadesWithOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this subDecadeWithOverflow() Sub one decade to the instance (using date interval) with overflow explicitly allowed.
* @method $this addDecadesWithoutOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addDecadeWithoutOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subDecadesWithoutOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subDecadeWithoutOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addDecadesWithNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addDecadeWithNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subDecadesWithNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subDecadeWithNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addDecadesNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addDecadeNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subDecadesNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subDecadeNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval).
* @method $this addQuarter() Add one quarter to the instance (using date interval).
* @method $this subQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval).
* @method $this subQuarter() Sub one quarter to the instance (using date interval).
* @method $this addQuartersWithOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this addQuarterWithOverflow() Add one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method $this subQuartersWithOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method $this subQuarterWithOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method $this addQuartersWithoutOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addQuarterWithoutOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subQuartersWithoutOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subQuarterWithoutOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addQuartersWithNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addQuarterWithNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subQuartersWithNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subQuarterWithNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addQuartersNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addQuarterNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subQuartersNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method $this subQuarterNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method $this addWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using date interval).
* @method $this addWeek() Add one week to the instance (using date interval).
* @method $this subWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using date interval).
* @method $this subWeek() Sub one week to the instance (using date interval).
* @method $this addWeekdays(int|float $value = 1) Add weekdays (the $value count passed in) to the instance (using date interval).
* @method $this addWeekday() Add one weekday to the instance (using date interval).
* @method $this subWeekdays(int|float $value = 1) Sub weekdays (the $value count passed in) to the instance (using date interval).
* @method $this subWeekday() Sub one weekday to the instance (using date interval).
* @method $this addUTCMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCMicro() Add one microsecond to the instance (using timestamp).
* @method $this subUTCMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCMicro() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicros(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method $this addUTCMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCMicrosecond() Add one microsecond to the instance (using timestamp).
* @method $this subUTCMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCMicrosecond() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicroseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method $this addUTCMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCMilli() Add one millisecond to the instance (using timestamp).
* @method $this subUTCMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCMilli() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMillis(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method $this addUTCMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCMillisecond() Add one millisecond to the instance (using timestamp).
* @method $this subUTCMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCMillisecond() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMilliseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method $this addUTCSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCSecond() Add one second to the instance (using timestamp).
* @method $this subUTCSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCSecond() Sub one second to the instance (using timestamp).
* @method CarbonPeriod secondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
* @method float diffInUTCSeconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of seconds.
* @method $this addUTCMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCMinute() Add one minute to the instance (using timestamp).
* @method $this subUTCMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCMinute() Sub one minute to the instance (using timestamp).
* @method CarbonPeriod minutesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
* @method float diffInUTCMinutes(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of minutes.
* @method $this addUTCHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCHour() Add one hour to the instance (using timestamp).
* @method $this subUTCHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCHour() Sub one hour to the instance (using timestamp).
* @method CarbonPeriod hoursUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
* @method float diffInUTCHours(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of hours.
* @method $this addUTCDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCDay() Add one day to the instance (using timestamp).
* @method $this subUTCDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCDay() Sub one day to the instance (using timestamp).
* @method CarbonPeriod daysUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
* @method float diffInUTCDays(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of days.
* @method $this addUTCWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCWeek() Add one week to the instance (using timestamp).
* @method $this subUTCWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCWeek() Sub one week to the instance (using timestamp).
* @method CarbonPeriod weeksUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
* @method float diffInUTCWeeks(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of weeks.
* @method $this addUTCMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCMonth() Add one month to the instance (using timestamp).
* @method $this subUTCMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCMonth() Sub one month to the instance (using timestamp).
* @method CarbonPeriod monthsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
* @method float diffInUTCMonths(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of months.
* @method $this addUTCQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCQuarter() Add one quarter to the instance (using timestamp).
* @method $this subUTCQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCQuarter() Sub one quarter to the instance (using timestamp).
* @method CarbonPeriod quartersUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
* @method float diffInUTCQuarters(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of quarters.
* @method $this addUTCYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCYear() Add one year to the instance (using timestamp).
* @method $this subUTCYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCYear() Sub one year to the instance (using timestamp).
* @method CarbonPeriod yearsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
* @method float diffInUTCYears(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of years.
* @method $this addUTCDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCDecade() Add one decade to the instance (using timestamp).
* @method $this subUTCDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCDecade() Sub one decade to the instance (using timestamp).
* @method CarbonPeriod decadesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
* @method float diffInUTCDecades(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of decades.
* @method $this addUTCCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCCentury() Add one century to the instance (using timestamp).
* @method $this subUTCCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCCentury() Sub one century to the instance (using timestamp).
* @method CarbonPeriod centuriesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
* @method float diffInUTCCenturies(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of centuries.
* @method $this addUTCMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using timestamp).
* @method $this addUTCMillennium() Add one millennium to the instance (using timestamp).
* @method $this subUTCMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using timestamp).
* @method $this subUTCMillennium() Sub one millennium to the instance (using timestamp).
* @method CarbonPeriod millenniaUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
* @method float diffInUTCMillennia(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of millennia.
* @method $this roundYear(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method $this roundYears(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method $this floorYear(float $precision = 1) Truncate the current instance year with given precision.
* @method $this floorYears(float $precision = 1) Truncate the current instance year with given precision.
* @method $this ceilYear(float $precision = 1) Ceil the current instance year with given precision.
* @method $this ceilYears(float $precision = 1) Ceil the current instance year with given precision.
* @method $this roundMonth(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method $this roundMonths(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method $this floorMonth(float $precision = 1) Truncate the current instance month with given precision.
* @method $this floorMonths(float $precision = 1) Truncate the current instance month with given precision.
* @method $this ceilMonth(float $precision = 1) Ceil the current instance month with given precision.
* @method $this ceilMonths(float $precision = 1) Ceil the current instance month with given precision.
* @method $this roundDay(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this roundDays(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this floorDay(float $precision = 1) Truncate the current instance day with given precision.
* @method $this floorDays(float $precision = 1) Truncate the current instance day with given precision.
* @method $this ceilDay(float $precision = 1) Ceil the current instance day with given precision.
* @method $this ceilDays(float $precision = 1) Ceil the current instance day with given precision.
* @method $this roundHour(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method $this roundHours(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method $this floorHour(float $precision = 1) Truncate the current instance hour with given precision.
* @method $this floorHours(float $precision = 1) Truncate the current instance hour with given precision.
* @method $this ceilHour(float $precision = 1) Ceil the current instance hour with given precision.
* @method $this ceilHours(float $precision = 1) Ceil the current instance hour with given precision.
* @method $this roundMinute(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method $this roundMinutes(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method $this floorMinute(float $precision = 1) Truncate the current instance minute with given precision.
* @method $this floorMinutes(float $precision = 1) Truncate the current instance minute with given precision.
* @method $this ceilMinute(float $precision = 1) Ceil the current instance minute with given precision.
* @method $this ceilMinutes(float $precision = 1) Ceil the current instance minute with given precision.
* @method $this roundSecond(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method $this roundSeconds(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method $this floorSecond(float $precision = 1) Truncate the current instance second with given precision.
* @method $this floorSeconds(float $precision = 1) Truncate the current instance second with given precision.
* @method $this ceilSecond(float $precision = 1) Ceil the current instance second with given precision.
* @method $this ceilSeconds(float $precision = 1) Ceil the current instance second with given precision.
* @method $this roundMillennium(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method $this roundMillennia(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method $this floorMillennium(float $precision = 1) Truncate the current instance millennium with given precision.
* @method $this floorMillennia(float $precision = 1) Truncate the current instance millennium with given precision.
* @method $this ceilMillennium(float $precision = 1) Ceil the current instance millennium with given precision.
* @method $this ceilMillennia(float $precision = 1) Ceil the current instance millennium with given precision.
* @method $this roundCentury(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method $this roundCenturies(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method $this floorCentury(float $precision = 1) Truncate the current instance century with given precision.
* @method $this floorCenturies(float $precision = 1) Truncate the current instance century with given precision.
* @method $this ceilCentury(float $precision = 1) Ceil the current instance century with given precision.
* @method $this ceilCenturies(float $precision = 1) Ceil the current instance century with given precision.
* @method $this roundDecade(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method $this roundDecades(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method $this floorDecade(float $precision = 1) Truncate the current instance decade with given precision.
* @method $this floorDecades(float $precision = 1) Truncate the current instance decade with given precision.
* @method $this ceilDecade(float $precision = 1) Ceil the current instance decade with given precision.
* @method $this ceilDecades(float $precision = 1) Ceil the current instance decade with given precision.
* @method $this roundQuarter(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method $this roundQuarters(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method $this floorQuarter(float $precision = 1) Truncate the current instance quarter with given precision.
* @method $this floorQuarters(float $precision = 1) Truncate the current instance quarter with given precision.
* @method $this ceilQuarter(float $precision = 1) Ceil the current instance quarter with given precision.
* @method $this ceilQuarters(float $precision = 1) Ceil the current instance quarter with given precision.
* @method $this roundMillisecond(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method $this roundMilliseconds(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method $this floorMillisecond(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method $this floorMilliseconds(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method $this ceilMillisecond(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method $this ceilMilliseconds(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method $this roundMicrosecond(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method $this roundMicroseconds(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method $this floorMicrosecond(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method $this floorMicroseconds(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method $this ceilMicrosecond(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method $this ceilMicroseconds(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method string shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method int centuriesInMillennium() Return the number of centuries contained in the current millennium
* @method int|static centuryOfMillennium(?int $century = null) Return the value of the century starting from the beginning of the current millennium when called with no parameters, change the current century when called with an integer value
* @method int|static dayOfCentury(?int $day = null) Return the value of the day starting from the beginning of the current century when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfDecade(?int $day = null) Return the value of the day starting from the beginning of the current decade when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMillennium(?int $day = null) Return the value of the day starting from the beginning of the current millennium when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMonth(?int $day = null) Return the value of the day starting from the beginning of the current month when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfQuarter(?int $day = null) Return the value of the day starting from the beginning of the current quarter when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfWeek(?int $day = null) Return the value of the day starting from the beginning of the current week when called with no parameters, change the current day when called with an integer value
* @method int daysInCentury() Return the number of days contained in the current century
* @method int daysInDecade() Return the number of days contained in the current decade
* @method int daysInMillennium() Return the number of days contained in the current millennium
* @method int daysInMonth() Return the number of days contained in the current month
* @method int daysInQuarter() Return the number of days contained in the current quarter
* @method int daysInWeek() Return the number of days contained in the current week
* @method int daysInYear() Return the number of days contained in the current year
* @method int|static decadeOfCentury(?int $decade = null) Return the value of the decade starting from the beginning of the current century when called with no parameters, change the current decade when called with an integer value
* @method int|static decadeOfMillennium(?int $decade = null) Return the value of the decade starting from the beginning of the current millennium when called with no parameters, change the current decade when called with an integer value
* @method int decadesInCentury() Return the number of decades contained in the current century
* @method int decadesInMillennium() Return the number of decades contained in the current millennium
* @method int|static hourOfCentury(?int $hour = null) Return the value of the hour starting from the beginning of the current century when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDay(?int $hour = null) Return the value of the hour starting from the beginning of the current day when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDecade(?int $hour = null) Return the value of the hour starting from the beginning of the current decade when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMillennium(?int $hour = null) Return the value of the hour starting from the beginning of the current millennium when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMonth(?int $hour = null) Return the value of the hour starting from the beginning of the current month when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfQuarter(?int $hour = null) Return the value of the hour starting from the beginning of the current quarter when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfWeek(?int $hour = null) Return the value of the hour starting from the beginning of the current week when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfYear(?int $hour = null) Return the value of the hour starting from the beginning of the current year when called with no parameters, change the current hour when called with an integer value
* @method int hoursInCentury() Return the number of hours contained in the current century
* @method int hoursInDay() Return the number of hours contained in the current day
* @method int hoursInDecade() Return the number of hours contained in the current decade
* @method int hoursInMillennium() Return the number of hours contained in the current millennium
* @method int hoursInMonth() Return the number of hours contained in the current month
* @method int hoursInQuarter() Return the number of hours contained in the current quarter
* @method int hoursInWeek() Return the number of hours contained in the current week
* @method int hoursInYear() Return the number of hours contained in the current year
* @method int|static microsecondOfCentury(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current century when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDay(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current day when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDecade(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current decade when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfHour(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current hour when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillennium(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millennium when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillisecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millisecond when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMinute(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current minute when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMonth(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current month when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfQuarter(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current quarter when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfSecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current second when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfWeek(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current week when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfYear(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current year when called with no parameters, change the current microsecond when called with an integer value
* @method int microsecondsInCentury() Return the number of microseconds contained in the current century
* @method int microsecondsInDay() Return the number of microseconds contained in the current day
* @method int microsecondsInDecade() Return the number of microseconds contained in the current decade
* @method int microsecondsInHour() Return the number of microseconds contained in the current hour
* @method int microsecondsInMillennium() Return the number of microseconds contained in the current millennium
* @method int microsecondsInMillisecond() Return the number of microseconds contained in the current millisecond
* @method int microsecondsInMinute() Return the number of microseconds contained in the current minute
* @method int microsecondsInMonth() Return the number of microseconds contained in the current month
* @method int microsecondsInQuarter() Return the number of microseconds contained in the current quarter
* @method int microsecondsInSecond() Return the number of microseconds contained in the current second
* @method int microsecondsInWeek() Return the number of microseconds contained in the current week
* @method int microsecondsInYear() Return the number of microseconds contained in the current year
* @method int|static millisecondOfCentury(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current century when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDay(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current day when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDecade(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current decade when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfHour(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current hour when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMillennium(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current millennium when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMinute(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current minute when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMonth(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current month when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfQuarter(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current quarter when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfSecond(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current second when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfWeek(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current week when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfYear(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current year when called with no parameters, change the current millisecond when called with an integer value
* @method int millisecondsInCentury() Return the number of milliseconds contained in the current century
* @method int millisecondsInDay() Return the number of milliseconds contained in the current day
* @method int millisecondsInDecade() Return the number of milliseconds contained in the current decade
* @method int millisecondsInHour() Return the number of milliseconds contained in the current hour
* @method int millisecondsInMillennium() Return the number of milliseconds contained in the current millennium
* @method int millisecondsInMinute() Return the number of milliseconds contained in the current minute
* @method int millisecondsInMonth() Return the number of milliseconds contained in the current month
* @method int millisecondsInQuarter() Return the number of milliseconds contained in the current quarter
* @method int millisecondsInSecond() Return the number of milliseconds contained in the current second
* @method int millisecondsInWeek() Return the number of milliseconds contained in the current week
* @method int millisecondsInYear() Return the number of milliseconds contained in the current year
* @method int|static minuteOfCentury(?int $minute = null) Return the value of the minute starting from the beginning of the current century when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDay(?int $minute = null) Return the value of the minute starting from the beginning of the current day when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDecade(?int $minute = null) Return the value of the minute starting from the beginning of the current decade when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfHour(?int $minute = null) Return the value of the minute starting from the beginning of the current hour when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMillennium(?int $minute = null) Return the value of the minute starting from the beginning of the current millennium when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMonth(?int $minute = null) Return the value of the minute starting from the beginning of the current month when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfQuarter(?int $minute = null) Return the value of the minute starting from the beginning of the current quarter when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfWeek(?int $minute = null) Return the value of the minute starting from the beginning of the current week when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfYear(?int $minute = null) Return the value of the minute starting from the beginning of the current year when called with no parameters, change the current minute when called with an integer value
* @method int minutesInCentury() Return the number of minutes contained in the current century
* @method int minutesInDay() Return the number of minutes contained in the current day
* @method int minutesInDecade() Return the number of minutes contained in the current decade
* @method int minutesInHour() Return the number of minutes contained in the current hour
* @method int minutesInMillennium() Return the number of minutes contained in the current millennium
* @method int minutesInMonth() Return the number of minutes contained in the current month
* @method int minutesInQuarter() Return the number of minutes contained in the current quarter
* @method int minutesInWeek() Return the number of minutes contained in the current week
* @method int minutesInYear() Return the number of minutes contained in the current year
* @method int|static monthOfCentury(?int $month = null) Return the value of the month starting from the beginning of the current century when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfDecade(?int $month = null) Return the value of the month starting from the beginning of the current decade when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfMillennium(?int $month = null) Return the value of the month starting from the beginning of the current millennium when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfQuarter(?int $month = null) Return the value of the month starting from the beginning of the current quarter when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfYear(?int $month = null) Return the value of the month starting from the beginning of the current year when called with no parameters, change the current month when called with an integer value
* @method int monthsInCentury() Return the number of months contained in the current century
* @method int monthsInDecade() Return the number of months contained in the current decade
* @method int monthsInMillennium() Return the number of months contained in the current millennium
* @method int monthsInQuarter() Return the number of months contained in the current quarter
* @method int monthsInYear() Return the number of months contained in the current year
* @method int|static quarterOfCentury(?int $quarter = null) Return the value of the quarter starting from the beginning of the current century when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfDecade(?int $quarter = null) Return the value of the quarter starting from the beginning of the current decade when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfMillennium(?int $quarter = null) Return the value of the quarter starting from the beginning of the current millennium when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfYear(?int $quarter = null) Return the value of the quarter starting from the beginning of the current year when called with no parameters, change the current quarter when called with an integer value
* @method int quartersInCentury() Return the number of quarters contained in the current century
* @method int quartersInDecade() Return the number of quarters contained in the current decade
* @method int quartersInMillennium() Return the number of quarters contained in the current millennium
* @method int quartersInYear() Return the number of quarters contained in the current year
* @method int|static secondOfCentury(?int $second = null) Return the value of the second starting from the beginning of the current century when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDay(?int $second = null) Return the value of the second starting from the beginning of the current day when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDecade(?int $second = null) Return the value of the second starting from the beginning of the current decade when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfHour(?int $second = null) Return the value of the second starting from the beginning of the current hour when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMillennium(?int $second = null) Return the value of the second starting from the beginning of the current millennium when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMinute(?int $second = null) Return the value of the second starting from the beginning of the current minute when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMonth(?int $second = null) Return the value of the second starting from the beginning of the current month when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfQuarter(?int $second = null) Return the value of the second starting from the beginning of the current quarter when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfWeek(?int $second = null) Return the value of the second starting from the beginning of the current week when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfYear(?int $second = null) Return the value of the second starting from the beginning of the current year when called with no parameters, change the current second when called with an integer value
* @method int secondsInCentury() Return the number of seconds contained in the current century
* @method int secondsInDay() Return the number of seconds contained in the current day
* @method int secondsInDecade() Return the number of seconds contained in the current decade
* @method int secondsInHour() Return the number of seconds contained in the current hour
* @method int secondsInMillennium() Return the number of seconds contained in the current millennium
* @method int secondsInMinute() Return the number of seconds contained in the current minute
* @method int secondsInMonth() Return the number of seconds contained in the current month
* @method int secondsInQuarter() Return the number of seconds contained in the current quarter
* @method int secondsInWeek() Return the number of seconds contained in the current week
* @method int secondsInYear() Return the number of seconds contained in the current year
* @method int|static weekOfCentury(?int $week = null) Return the value of the week starting from the beginning of the current century when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfDecade(?int $week = null) Return the value of the week starting from the beginning of the current decade when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMillennium(?int $week = null) Return the value of the week starting from the beginning of the current millennium when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMonth(?int $week = null) Return the value of the week starting from the beginning of the current month when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfQuarter(?int $week = null) Return the value of the week starting from the beginning of the current quarter when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfYear(?int $week = null) Return the value of the week starting from the beginning of the current year when called with no parameters, change the current week when called with an integer value
* @method int weeksInCentury() Return the number of weeks contained in the current century
* @method int weeksInDecade() Return the number of weeks contained in the current decade
* @method int weeksInMillennium() Return the number of weeks contained in the current millennium
* @method int weeksInMonth() Return the number of weeks contained in the current month
* @method int weeksInQuarter() Return the number of weeks contained in the current quarter
* @method int|static yearOfCentury(?int $year = null) Return the value of the year starting from the beginning of the current century when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfDecade(?int $year = null) Return the value of the year starting from the beginning of the current decade when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfMillennium(?int $year = null) Return the value of the year starting from the beginning of the current millennium when called with no parameters, change the current year when called with an integer value
* @method int yearsInCentury() Return the number of years contained in the current century
* @method int yearsInDecade() Return the number of years contained in the current decade
* @method int yearsInMillennium() Return the number of years contained in the current millennium
*
*
*/
class Carbon extends DateTime implements CarbonInterface
{
use Date;
/**
* Returns true if the current class/instance is mutable.
*/
public static function isMutable(): bool
{
return true;
}
}
src/Carbon/CarbonConverterInterface.php 0000644 00000000673 14753612052 0014200 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use DateTimeInterface;
interface CarbonConverterInterface
{
public function convertDate(DateTimeInterface $dateTime, bool $negated = false): CarbonInterface;
}
src/Carbon/CarbonImmutable.php 0000644 00000473312 14753612052 0012333 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Carbon\Traits\Date;
use DateTimeImmutable;
use DateTimeInterface;
/**
* A simple API extension for DateTimeImmutable.
*
*
*
* @property string $localeDayOfWeek the day of week in current locale
* @property string $shortLocaleDayOfWeek the abbreviated day of week in current locale
* @property string $localeMonth the month in current locale
* @property string $shortLocaleMonth the abbreviated month in current locale
* @property int $year
* @property int $yearIso
* @property int $month
* @property int $day
* @property int $hour
* @property int $minute
* @property int $second
* @property int $micro
* @property int $microsecond
* @property int $dayOfWeekIso 1 (for Monday) through 7 (for Sunday)
* @property int|float|string $timestamp seconds since the Unix Epoch
* @property string $englishDayOfWeek the day of week in English
* @property string $shortEnglishDayOfWeek the abbreviated day of week in English
* @property string $englishMonth the month in English
* @property string $shortEnglishMonth the abbreviated month in English
* @property int $milliseconds
* @property int $millisecond
* @property int $milli
* @property int $week 1 through 53
* @property int $isoWeek 1 through 53
* @property int $weekYear year according to week format
* @property int $isoWeekYear year according to ISO week format
* @property int $age does a diffInYears() with default parameters
* @property int $offset the timezone offset in seconds from UTC
* @property int $offsetMinutes the timezone offset in minutes from UTC
* @property int $offsetHours the timezone offset in hours from UTC
* @property CarbonTimeZone $timezone the current timezone
* @property CarbonTimeZone $tz alias of $timezone
* @property int $centuryOfMillennium The value of the century starting from the beginning of the current millennium
* @property int $dayOfCentury The value of the day starting from the beginning of the current century
* @property int $dayOfDecade The value of the day starting from the beginning of the current decade
* @property int $dayOfMillennium The value of the day starting from the beginning of the current millennium
* @property int $dayOfMonth The value of the day starting from the beginning of the current month
* @property int $dayOfQuarter The value of the day starting from the beginning of the current quarter
* @property int $dayOfWeek 0 (for Sunday) through 6 (for Saturday)
* @property int $dayOfYear 1 through 366
* @property int $decadeOfCentury The value of the decade starting from the beginning of the current century
* @property int $decadeOfMillennium The value of the decade starting from the beginning of the current millennium
* @property int $hourOfCentury The value of the hour starting from the beginning of the current century
* @property int $hourOfDay The value of the hour starting from the beginning of the current day
* @property int $hourOfDecade The value of the hour starting from the beginning of the current decade
* @property int $hourOfMillennium The value of the hour starting from the beginning of the current millennium
* @property int $hourOfMonth The value of the hour starting from the beginning of the current month
* @property int $hourOfQuarter The value of the hour starting from the beginning of the current quarter
* @property int $hourOfWeek The value of the hour starting from the beginning of the current week
* @property int $hourOfYear The value of the hour starting from the beginning of the current year
* @property int $microsecondOfCentury The value of the microsecond starting from the beginning of the current century
* @property int $microsecondOfDay The value of the microsecond starting from the beginning of the current day
* @property int $microsecondOfDecade The value of the microsecond starting from the beginning of the current decade
* @property int $microsecondOfHour The value of the microsecond starting from the beginning of the current hour
* @property int $microsecondOfMillennium The value of the microsecond starting from the beginning of the current millennium
* @property int $microsecondOfMillisecond The value of the microsecond starting from the beginning of the current millisecond
* @property int $microsecondOfMinute The value of the microsecond starting from the beginning of the current minute
* @property int $microsecondOfMonth The value of the microsecond starting from the beginning of the current month
* @property int $microsecondOfQuarter The value of the microsecond starting from the beginning of the current quarter
* @property int $microsecondOfSecond The value of the microsecond starting from the beginning of the current second
* @property int $microsecondOfWeek The value of the microsecond starting from the beginning of the current week
* @property int $microsecondOfYear The value of the microsecond starting from the beginning of the current year
* @property int $millisecondOfCentury The value of the millisecond starting from the beginning of the current century
* @property int $millisecondOfDay The value of the millisecond starting from the beginning of the current day
* @property int $millisecondOfDecade The value of the millisecond starting from the beginning of the current decade
* @property int $millisecondOfHour The value of the millisecond starting from the beginning of the current hour
* @property int $millisecondOfMillennium The value of the millisecond starting from the beginning of the current millennium
* @property int $millisecondOfMinute The value of the millisecond starting from the beginning of the current minute
* @property int $millisecondOfMonth The value of the millisecond starting from the beginning of the current month
* @property int $millisecondOfQuarter The value of the millisecond starting from the beginning of the current quarter
* @property int $millisecondOfSecond The value of the millisecond starting from the beginning of the current second
* @property int $millisecondOfWeek The value of the millisecond starting from the beginning of the current week
* @property int $millisecondOfYear The value of the millisecond starting from the beginning of the current year
* @property int $minuteOfCentury The value of the minute starting from the beginning of the current century
* @property int $minuteOfDay The value of the minute starting from the beginning of the current day
* @property int $minuteOfDecade The value of the minute starting from the beginning of the current decade
* @property int $minuteOfHour The value of the minute starting from the beginning of the current hour
* @property int $minuteOfMillennium The value of the minute starting from the beginning of the current millennium
* @property int $minuteOfMonth The value of the minute starting from the beginning of the current month
* @property int $minuteOfQuarter The value of the minute starting from the beginning of the current quarter
* @property int $minuteOfWeek The value of the minute starting from the beginning of the current week
* @property int $minuteOfYear The value of the minute starting from the beginning of the current year
* @property int $monthOfCentury The value of the month starting from the beginning of the current century
* @property int $monthOfDecade The value of the month starting from the beginning of the current decade
* @property int $monthOfMillennium The value of the month starting from the beginning of the current millennium
* @property int $monthOfQuarter The value of the month starting from the beginning of the current quarter
* @property int $monthOfYear The value of the month starting from the beginning of the current year
* @property int $quarterOfCentury The value of the quarter starting from the beginning of the current century
* @property int $quarterOfDecade The value of the quarter starting from the beginning of the current decade
* @property int $quarterOfMillennium The value of the quarter starting from the beginning of the current millennium
* @property int $quarterOfYear The value of the quarter starting from the beginning of the current year
* @property int $secondOfCentury The value of the second starting from the beginning of the current century
* @property int $secondOfDay The value of the second starting from the beginning of the current day
* @property int $secondOfDecade The value of the second starting from the beginning of the current decade
* @property int $secondOfHour The value of the second starting from the beginning of the current hour
* @property int $secondOfMillennium The value of the second starting from the beginning of the current millennium
* @property int $secondOfMinute The value of the second starting from the beginning of the current minute
* @property int $secondOfMonth The value of the second starting from the beginning of the current month
* @property int $secondOfQuarter The value of the second starting from the beginning of the current quarter
* @property int $secondOfWeek The value of the second starting from the beginning of the current week
* @property int $secondOfYear The value of the second starting from the beginning of the current year
* @property int $weekOfCentury The value of the week starting from the beginning of the current century
* @property int $weekOfDecade The value of the week starting from the beginning of the current decade
* @property int $weekOfMillennium The value of the week starting from the beginning of the current millennium
* @property int $weekOfMonth 1 through 5
* @property int $weekOfQuarter The value of the week starting from the beginning of the current quarter
* @property int $weekOfYear ISO-8601 week number of year, weeks starting on Monday
* @property int $yearOfCentury The value of the year starting from the beginning of the current century
* @property int $yearOfDecade The value of the year starting from the beginning of the current decade
* @property int $yearOfMillennium The value of the year starting from the beginning of the current millennium
* @property-read string $latinMeridiem "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
* @property-read string $latinUpperMeridiem "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
* @property-read string $timezoneAbbreviatedName the current timezone abbreviated name
* @property-read string $tzAbbrName alias of $timezoneAbbreviatedName
* @property-read string $dayName long name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortDayName short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $minDayName very short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $monthName long name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortMonthName short name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $meridiem lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read string $upperMeridiem uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read int $noZeroHour current hour from 1 to 24
* @property-read int $isoWeeksInYear 51 through 53
* @property-read int $weekNumberInMonth 1 through 5
* @property-read int $firstWeekDay 0 through 6
* @property-read int $lastWeekDay 0 through 6
* @property-read int $quarter the quarter of this instance, 1 - 4
* @property-read int $decade the decade of this instance
* @property-read int $century the century of this instance
* @property-read int $millennium the millennium of this instance
* @property-read bool $dst daylight savings time indicator, true if DST, false otherwise
* @property-read bool $local checks if the timezone is local, true if local, false otherwise
* @property-read bool $utc checks if the timezone is UTC, true if UTC, false otherwise
* @property-read string $timezoneName the current timezone name
* @property-read string $tzName alias of $timezoneName
* @property-read string $locale locale of the current instance
* @property-read int $centuriesInMillennium The number of centuries contained in the current millennium
* @property-read int $daysInCentury The number of days contained in the current century
* @property-read int $daysInDecade The number of days contained in the current decade
* @property-read int $daysInMillennium The number of days contained in the current millennium
* @property-read int $daysInMonth number of days in the given month
* @property-read int $daysInQuarter The number of days contained in the current quarter
* @property-read int $daysInWeek The number of days contained in the current week
* @property-read int $daysInYear 365 or 366
* @property-read int $decadesInCentury The number of decades contained in the current century
* @property-read int $decadesInMillennium The number of decades contained in the current millennium
* @property-read int $hoursInCentury The number of hours contained in the current century
* @property-read int $hoursInDay The number of hours contained in the current day
* @property-read int $hoursInDecade The number of hours contained in the current decade
* @property-read int $hoursInMillennium The number of hours contained in the current millennium
* @property-read int $hoursInMonth The number of hours contained in the current month
* @property-read int $hoursInQuarter The number of hours contained in the current quarter
* @property-read int $hoursInWeek The number of hours contained in the current week
* @property-read int $hoursInYear The number of hours contained in the current year
* @property-read int $microsecondsInCentury The number of microseconds contained in the current century
* @property-read int $microsecondsInDay The number of microseconds contained in the current day
* @property-read int $microsecondsInDecade The number of microseconds contained in the current decade
* @property-read int $microsecondsInHour The number of microseconds contained in the current hour
* @property-read int $microsecondsInMillennium The number of microseconds contained in the current millennium
* @property-read int $microsecondsInMillisecond The number of microseconds contained in the current millisecond
* @property-read int $microsecondsInMinute The number of microseconds contained in the current minute
* @property-read int $microsecondsInMonth The number of microseconds contained in the current month
* @property-read int $microsecondsInQuarter The number of microseconds contained in the current quarter
* @property-read int $microsecondsInSecond The number of microseconds contained in the current second
* @property-read int $microsecondsInWeek The number of microseconds contained in the current week
* @property-read int $microsecondsInYear The number of microseconds contained in the current year
* @property-read int $millisecondsInCentury The number of milliseconds contained in the current century
* @property-read int $millisecondsInDay The number of milliseconds contained in the current day
* @property-read int $millisecondsInDecade The number of milliseconds contained in the current decade
* @property-read int $millisecondsInHour The number of milliseconds contained in the current hour
* @property-read int $millisecondsInMillennium The number of milliseconds contained in the current millennium
* @property-read int $millisecondsInMinute The number of milliseconds contained in the current minute
* @property-read int $millisecondsInMonth The number of milliseconds contained in the current month
* @property-read int $millisecondsInQuarter The number of milliseconds contained in the current quarter
* @property-read int $millisecondsInSecond The number of milliseconds contained in the current second
* @property-read int $millisecondsInWeek The number of milliseconds contained in the current week
* @property-read int $millisecondsInYear The number of milliseconds contained in the current year
* @property-read int $minutesInCentury The number of minutes contained in the current century
* @property-read int $minutesInDay The number of minutes contained in the current day
* @property-read int $minutesInDecade The number of minutes contained in the current decade
* @property-read int $minutesInHour The number of minutes contained in the current hour
* @property-read int $minutesInMillennium The number of minutes contained in the current millennium
* @property-read int $minutesInMonth The number of minutes contained in the current month
* @property-read int $minutesInQuarter The number of minutes contained in the current quarter
* @property-read int $minutesInWeek The number of minutes contained in the current week
* @property-read int $minutesInYear The number of minutes contained in the current year
* @property-read int $monthsInCentury The number of months contained in the current century
* @property-read int $monthsInDecade The number of months contained in the current decade
* @property-read int $monthsInMillennium The number of months contained in the current millennium
* @property-read int $monthsInQuarter The number of months contained in the current quarter
* @property-read int $monthsInYear The number of months contained in the current year
* @property-read int $quartersInCentury The number of quarters contained in the current century
* @property-read int $quartersInDecade The number of quarters contained in the current decade
* @property-read int $quartersInMillennium The number of quarters contained in the current millennium
* @property-read int $quartersInYear The number of quarters contained in the current year
* @property-read int $secondsInCentury The number of seconds contained in the current century
* @property-read int $secondsInDay The number of seconds contained in the current day
* @property-read int $secondsInDecade The number of seconds contained in the current decade
* @property-read int $secondsInHour The number of seconds contained in the current hour
* @property-read int $secondsInMillennium The number of seconds contained in the current millennium
* @property-read int $secondsInMinute The number of seconds contained in the current minute
* @property-read int $secondsInMonth The number of seconds contained in the current month
* @property-read int $secondsInQuarter The number of seconds contained in the current quarter
* @property-read int $secondsInWeek The number of seconds contained in the current week
* @property-read int $secondsInYear The number of seconds contained in the current year
* @property-read int $weeksInCentury The number of weeks contained in the current century
* @property-read int $weeksInDecade The number of weeks contained in the current decade
* @property-read int $weeksInMillennium The number of weeks contained in the current millennium
* @property-read int $weeksInMonth The number of weeks contained in the current month
* @property-read int $weeksInQuarter The number of weeks contained in the current quarter
* @property-read int $weeksInYear 51 through 53
* @property-read int $yearsInCentury The number of years contained in the current century
* @property-read int $yearsInDecade The number of years contained in the current decade
* @property-read int $yearsInMillennium The number of years contained in the current millennium
*
* @method bool isUtc() Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
* @method bool isLocal() Check if the current instance has non-UTC timezone.
* @method bool isValid() Check if the current instance is a valid date.
* @method bool isDST() Check if the current instance is in a daylight saving time.
* @method bool isSunday() Checks if the instance day is sunday.
* @method bool isMonday() Checks if the instance day is monday.
* @method bool isTuesday() Checks if the instance day is tuesday.
* @method bool isWednesday() Checks if the instance day is wednesday.
* @method bool isThursday() Checks if the instance day is thursday.
* @method bool isFriday() Checks if the instance day is friday.
* @method bool isSaturday() Checks if the instance day is saturday.
* @method bool isSameYear(DateTimeInterface|string $date) Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentYear() Checks if the instance is in the same year as the current moment.
* @method bool isNextYear() Checks if the instance is in the same year as the current moment next year.
* @method bool isLastYear() Checks if the instance is in the same year as the current moment last year.
* @method bool isCurrentMonth() Checks if the instance is in the same month as the current moment.
* @method bool isNextMonth() Checks if the instance is in the same month as the current moment next month.
* @method bool isLastMonth() Checks if the instance is in the same month as the current moment last month.
* @method bool isSameWeek(DateTimeInterface|string $date) Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentWeek() Checks if the instance is in the same week as the current moment.
* @method bool isNextWeek() Checks if the instance is in the same week as the current moment next week.
* @method bool isLastWeek() Checks if the instance is in the same week as the current moment last week.
* @method bool isSameDay(DateTimeInterface|string $date) Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDay() Checks if the instance is in the same day as the current moment.
* @method bool isNextDay() Checks if the instance is in the same day as the current moment next day.
* @method bool isLastDay() Checks if the instance is in the same day as the current moment last day.
* @method bool isSameHour(DateTimeInterface|string $date) Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentHour() Checks if the instance is in the same hour as the current moment.
* @method bool isNextHour() Checks if the instance is in the same hour as the current moment next hour.
* @method bool isLastHour() Checks if the instance is in the same hour as the current moment last hour.
* @method bool isSameMinute(DateTimeInterface|string $date) Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMinute() Checks if the instance is in the same minute as the current moment.
* @method bool isNextMinute() Checks if the instance is in the same minute as the current moment next minute.
* @method bool isLastMinute() Checks if the instance is in the same minute as the current moment last minute.
* @method bool isSameSecond(DateTimeInterface|string $date) Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentSecond() Checks if the instance is in the same second as the current moment.
* @method bool isNextSecond() Checks if the instance is in the same second as the current moment next second.
* @method bool isLastSecond() Checks if the instance is in the same second as the current moment last second.
* @method bool isSameMilli(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMilli() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMilli() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMilli() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMillisecond(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillisecond() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMillisecond() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMillisecond() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMicro(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicro() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicro() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicro() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameMicrosecond(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicrosecond() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicrosecond() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicrosecond() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameDecade(DateTimeInterface|string $date) Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDecade() Checks if the instance is in the same decade as the current moment.
* @method bool isNextDecade() Checks if the instance is in the same decade as the current moment next decade.
* @method bool isLastDecade() Checks if the instance is in the same decade as the current moment last decade.
* @method bool isSameCentury(DateTimeInterface|string $date) Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentCentury() Checks if the instance is in the same century as the current moment.
* @method bool isNextCentury() Checks if the instance is in the same century as the current moment next century.
* @method bool isLastCentury() Checks if the instance is in the same century as the current moment last century.
* @method bool isSameMillennium(DateTimeInterface|string $date) Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillennium() Checks if the instance is in the same millennium as the current moment.
* @method bool isNextMillennium() Checks if the instance is in the same millennium as the current moment next millennium.
* @method bool isLastMillennium() Checks if the instance is in the same millennium as the current moment last millennium.
* @method bool isCurrentQuarter() Checks if the instance is in the same quarter as the current moment.
* @method bool isNextQuarter() Checks if the instance is in the same quarter as the current moment next quarter.
* @method bool isLastQuarter() Checks if the instance is in the same quarter as the current moment last quarter.
* @method CarbonImmutable years(int $value) Set current instance year to the given value.
* @method CarbonImmutable year(int $value) Set current instance year to the given value.
* @method CarbonImmutable setYears(int $value) Set current instance year to the given value.
* @method CarbonImmutable setYear(int $value) Set current instance year to the given value.
* @method CarbonImmutable months(Month|int $value) Set current instance month to the given value.
* @method CarbonImmutable month(Month|int $value) Set current instance month to the given value.
* @method CarbonImmutable setMonths(Month|int $value) Set current instance month to the given value.
* @method CarbonImmutable setMonth(Month|int $value) Set current instance month to the given value.
* @method CarbonImmutable days(int $value) Set current instance day to the given value.
* @method CarbonImmutable day(int $value) Set current instance day to the given value.
* @method CarbonImmutable setDays(int $value) Set current instance day to the given value.
* @method CarbonImmutable setDay(int $value) Set current instance day to the given value.
* @method CarbonImmutable hours(int $value) Set current instance hour to the given value.
* @method CarbonImmutable hour(int $value) Set current instance hour to the given value.
* @method CarbonImmutable setHours(int $value) Set current instance hour to the given value.
* @method CarbonImmutable setHour(int $value) Set current instance hour to the given value.
* @method CarbonImmutable minutes(int $value) Set current instance minute to the given value.
* @method CarbonImmutable minute(int $value) Set current instance minute to the given value.
* @method CarbonImmutable setMinutes(int $value) Set current instance minute to the given value.
* @method CarbonImmutable setMinute(int $value) Set current instance minute to the given value.
* @method CarbonImmutable seconds(int $value) Set current instance second to the given value.
* @method CarbonImmutable second(int $value) Set current instance second to the given value.
* @method CarbonImmutable setSeconds(int $value) Set current instance second to the given value.
* @method CarbonImmutable setSecond(int $value) Set current instance second to the given value.
* @method CarbonImmutable millis(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable milli(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable setMillis(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable setMilli(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable milliseconds(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable millisecond(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable setMilliseconds(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable setMillisecond(int $value) Set current instance millisecond to the given value.
* @method CarbonImmutable micros(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable micro(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable setMicros(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable setMicro(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable microseconds(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable microsecond(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable setMicroseconds(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable setMicrosecond(int $value) Set current instance microsecond to the given value.
* @method CarbonImmutable addYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addYear() Add one year to the instance (using date interval).
* @method CarbonImmutable subYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subYear() Sub one year to the instance (using date interval).
* @method CarbonImmutable addYearsWithOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addYearWithOverflow() Add one year to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subYearsWithOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subYearWithOverflow() Sub one year to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addYearsWithoutOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addYearWithoutOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subYearsWithoutOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subYearWithoutOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addYearsWithNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addYearWithNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subYearsWithNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subYearWithNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addYearsNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addYearNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subYearsNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subYearNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addMonth() Add one month to the instance (using date interval).
* @method CarbonImmutable subMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subMonth() Sub one month to the instance (using date interval).
* @method CarbonImmutable addMonthsWithOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addMonthWithOverflow() Add one month to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subMonthsWithOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subMonthWithOverflow() Sub one month to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addMonthsWithoutOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMonthWithoutOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMonthsWithoutOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMonthWithoutOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMonthsWithNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMonthWithNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMonthsWithNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMonthWithNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMonthsNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMonthNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMonthsNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMonthNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addDay() Add one day to the instance (using date interval).
* @method CarbonImmutable subDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subDay() Sub one day to the instance (using date interval).
* @method CarbonImmutable addHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addHour() Add one hour to the instance (using date interval).
* @method CarbonImmutable subHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subHour() Sub one hour to the instance (using date interval).
* @method CarbonImmutable addMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addMinute() Add one minute to the instance (using date interval).
* @method CarbonImmutable subMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subMinute() Sub one minute to the instance (using date interval).
* @method CarbonImmutable addSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addSecond() Add one second to the instance (using date interval).
* @method CarbonImmutable subSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subSecond() Sub one second to the instance (using date interval).
* @method CarbonImmutable addMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addMilli() Add one millisecond to the instance (using date interval).
* @method CarbonImmutable subMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subMilli() Sub one millisecond to the instance (using date interval).
* @method CarbonImmutable addMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addMillisecond() Add one millisecond to the instance (using date interval).
* @method CarbonImmutable subMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subMillisecond() Sub one millisecond to the instance (using date interval).
* @method CarbonImmutable addMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addMicro() Add one microsecond to the instance (using date interval).
* @method CarbonImmutable subMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subMicro() Sub one microsecond to the instance (using date interval).
* @method CarbonImmutable addMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addMicrosecond() Add one microsecond to the instance (using date interval).
* @method CarbonImmutable subMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subMicrosecond() Sub one microsecond to the instance (using date interval).
* @method CarbonImmutable addMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addMillennium() Add one millennium to the instance (using date interval).
* @method CarbonImmutable subMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subMillennium() Sub one millennium to the instance (using date interval).
* @method CarbonImmutable addMillenniaWithOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addMillenniumWithOverflow() Add one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subMillenniaWithOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subMillenniumWithOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addMillenniaWithoutOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMillenniumWithoutOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMillenniaWithoutOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMillenniumWithoutOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMillenniaWithNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMillenniumWithNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMillenniaWithNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMillenniumWithNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMillenniaNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addMillenniumNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMillenniaNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subMillenniumNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addCentury() Add one century to the instance (using date interval).
* @method CarbonImmutable subCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subCentury() Sub one century to the instance (using date interval).
* @method CarbonImmutable addCenturiesWithOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addCenturyWithOverflow() Add one century to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subCenturiesWithOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subCenturyWithOverflow() Sub one century to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addCenturiesWithoutOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addCenturyWithoutOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subCenturiesWithoutOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subCenturyWithoutOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addCenturiesWithNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addCenturyWithNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subCenturiesWithNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subCenturyWithNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addCenturiesNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addCenturyNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subCenturiesNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subCenturyNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addDecade() Add one decade to the instance (using date interval).
* @method CarbonImmutable subDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subDecade() Sub one decade to the instance (using date interval).
* @method CarbonImmutable addDecadesWithOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addDecadeWithOverflow() Add one decade to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subDecadesWithOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subDecadeWithOverflow() Sub one decade to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addDecadesWithoutOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addDecadeWithoutOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subDecadesWithoutOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subDecadeWithoutOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addDecadesWithNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addDecadeWithNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subDecadesWithNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subDecadeWithNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addDecadesNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addDecadeNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subDecadesNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subDecadeNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addQuarter() Add one quarter to the instance (using date interval).
* @method CarbonImmutable subQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subQuarter() Sub one quarter to the instance (using date interval).
* @method CarbonImmutable addQuartersWithOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addQuarterWithOverflow() Add one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subQuartersWithOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable subQuarterWithOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonImmutable addQuartersWithoutOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addQuarterWithoutOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subQuartersWithoutOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subQuarterWithoutOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addQuartersWithNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addQuarterWithNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subQuartersWithNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subQuarterWithNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addQuartersNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addQuarterNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subQuartersNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable subQuarterNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonImmutable addWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addWeek() Add one week to the instance (using date interval).
* @method CarbonImmutable subWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subWeek() Sub one week to the instance (using date interval).
* @method CarbonImmutable addWeekdays(int|float $value = 1) Add weekdays (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable addWeekday() Add one weekday to the instance (using date interval).
* @method CarbonImmutable subWeekdays(int|float $value = 1) Sub weekdays (the $value count passed in) to the instance (using date interval).
* @method CarbonImmutable subWeekday() Sub one weekday to the instance (using date interval).
* @method CarbonImmutable addUTCMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCMicro() Add one microsecond to the instance (using timestamp).
* @method CarbonImmutable subUTCMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCMicro() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicros(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method CarbonImmutable addUTCMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCMicrosecond() Add one microsecond to the instance (using timestamp).
* @method CarbonImmutable subUTCMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCMicrosecond() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicroseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method CarbonImmutable addUTCMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCMilli() Add one millisecond to the instance (using timestamp).
* @method CarbonImmutable subUTCMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCMilli() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMillis(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method CarbonImmutable addUTCMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCMillisecond() Add one millisecond to the instance (using timestamp).
* @method CarbonImmutable subUTCMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCMillisecond() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMilliseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method CarbonImmutable addUTCSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCSecond() Add one second to the instance (using timestamp).
* @method CarbonImmutable subUTCSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCSecond() Sub one second to the instance (using timestamp).
* @method CarbonPeriod secondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
* @method float diffInUTCSeconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of seconds.
* @method CarbonImmutable addUTCMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCMinute() Add one minute to the instance (using timestamp).
* @method CarbonImmutable subUTCMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCMinute() Sub one minute to the instance (using timestamp).
* @method CarbonPeriod minutesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
* @method float diffInUTCMinutes(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of minutes.
* @method CarbonImmutable addUTCHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCHour() Add one hour to the instance (using timestamp).
* @method CarbonImmutable subUTCHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCHour() Sub one hour to the instance (using timestamp).
* @method CarbonPeriod hoursUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
* @method float diffInUTCHours(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of hours.
* @method CarbonImmutable addUTCDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCDay() Add one day to the instance (using timestamp).
* @method CarbonImmutable subUTCDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCDay() Sub one day to the instance (using timestamp).
* @method CarbonPeriod daysUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
* @method float diffInUTCDays(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of days.
* @method CarbonImmutable addUTCWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCWeek() Add one week to the instance (using timestamp).
* @method CarbonImmutable subUTCWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCWeek() Sub one week to the instance (using timestamp).
* @method CarbonPeriod weeksUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
* @method float diffInUTCWeeks(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of weeks.
* @method CarbonImmutable addUTCMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCMonth() Add one month to the instance (using timestamp).
* @method CarbonImmutable subUTCMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCMonth() Sub one month to the instance (using timestamp).
* @method CarbonPeriod monthsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
* @method float diffInUTCMonths(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of months.
* @method CarbonImmutable addUTCQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCQuarter() Add one quarter to the instance (using timestamp).
* @method CarbonImmutable subUTCQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCQuarter() Sub one quarter to the instance (using timestamp).
* @method CarbonPeriod quartersUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
* @method float diffInUTCQuarters(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of quarters.
* @method CarbonImmutable addUTCYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCYear() Add one year to the instance (using timestamp).
* @method CarbonImmutable subUTCYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCYear() Sub one year to the instance (using timestamp).
* @method CarbonPeriod yearsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
* @method float diffInUTCYears(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of years.
* @method CarbonImmutable addUTCDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCDecade() Add one decade to the instance (using timestamp).
* @method CarbonImmutable subUTCDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCDecade() Sub one decade to the instance (using timestamp).
* @method CarbonPeriod decadesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
* @method float diffInUTCDecades(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of decades.
* @method CarbonImmutable addUTCCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCCentury() Add one century to the instance (using timestamp).
* @method CarbonImmutable subUTCCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCCentury() Sub one century to the instance (using timestamp).
* @method CarbonPeriod centuriesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
* @method float diffInUTCCenturies(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of centuries.
* @method CarbonImmutable addUTCMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable addUTCMillennium() Add one millennium to the instance (using timestamp).
* @method CarbonImmutable subUTCMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using timestamp).
* @method CarbonImmutable subUTCMillennium() Sub one millennium to the instance (using timestamp).
* @method CarbonPeriod millenniaUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
* @method float diffInUTCMillennia(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of millennia.
* @method CarbonImmutable roundYear(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method CarbonImmutable roundYears(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method CarbonImmutable floorYear(float $precision = 1) Truncate the current instance year with given precision.
* @method CarbonImmutable floorYears(float $precision = 1) Truncate the current instance year with given precision.
* @method CarbonImmutable ceilYear(float $precision = 1) Ceil the current instance year with given precision.
* @method CarbonImmutable ceilYears(float $precision = 1) Ceil the current instance year with given precision.
* @method CarbonImmutable roundMonth(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method CarbonImmutable roundMonths(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method CarbonImmutable floorMonth(float $precision = 1) Truncate the current instance month with given precision.
* @method CarbonImmutable floorMonths(float $precision = 1) Truncate the current instance month with given precision.
* @method CarbonImmutable ceilMonth(float $precision = 1) Ceil the current instance month with given precision.
* @method CarbonImmutable ceilMonths(float $precision = 1) Ceil the current instance month with given precision.
* @method CarbonImmutable roundDay(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method CarbonImmutable roundDays(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method CarbonImmutable floorDay(float $precision = 1) Truncate the current instance day with given precision.
* @method CarbonImmutable floorDays(float $precision = 1) Truncate the current instance day with given precision.
* @method CarbonImmutable ceilDay(float $precision = 1) Ceil the current instance day with given precision.
* @method CarbonImmutable ceilDays(float $precision = 1) Ceil the current instance day with given precision.
* @method CarbonImmutable roundHour(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method CarbonImmutable roundHours(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method CarbonImmutable floorHour(float $precision = 1) Truncate the current instance hour with given precision.
* @method CarbonImmutable floorHours(float $precision = 1) Truncate the current instance hour with given precision.
* @method CarbonImmutable ceilHour(float $precision = 1) Ceil the current instance hour with given precision.
* @method CarbonImmutable ceilHours(float $precision = 1) Ceil the current instance hour with given precision.
* @method CarbonImmutable roundMinute(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method CarbonImmutable roundMinutes(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method CarbonImmutable floorMinute(float $precision = 1) Truncate the current instance minute with given precision.
* @method CarbonImmutable floorMinutes(float $precision = 1) Truncate the current instance minute with given precision.
* @method CarbonImmutable ceilMinute(float $precision = 1) Ceil the current instance minute with given precision.
* @method CarbonImmutable ceilMinutes(float $precision = 1) Ceil the current instance minute with given precision.
* @method CarbonImmutable roundSecond(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method CarbonImmutable roundSeconds(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method CarbonImmutable floorSecond(float $precision = 1) Truncate the current instance second with given precision.
* @method CarbonImmutable floorSeconds(float $precision = 1) Truncate the current instance second with given precision.
* @method CarbonImmutable ceilSecond(float $precision = 1) Ceil the current instance second with given precision.
* @method CarbonImmutable ceilSeconds(float $precision = 1) Ceil the current instance second with given precision.
* @method CarbonImmutable roundMillennium(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method CarbonImmutable roundMillennia(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method CarbonImmutable floorMillennium(float $precision = 1) Truncate the current instance millennium with given precision.
* @method CarbonImmutable floorMillennia(float $precision = 1) Truncate the current instance millennium with given precision.
* @method CarbonImmutable ceilMillennium(float $precision = 1) Ceil the current instance millennium with given precision.
* @method CarbonImmutable ceilMillennia(float $precision = 1) Ceil the current instance millennium with given precision.
* @method CarbonImmutable roundCentury(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method CarbonImmutable roundCenturies(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method CarbonImmutable floorCentury(float $precision = 1) Truncate the current instance century with given precision.
* @method CarbonImmutable floorCenturies(float $precision = 1) Truncate the current instance century with given precision.
* @method CarbonImmutable ceilCentury(float $precision = 1) Ceil the current instance century with given precision.
* @method CarbonImmutable ceilCenturies(float $precision = 1) Ceil the current instance century with given precision.
* @method CarbonImmutable roundDecade(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method CarbonImmutable roundDecades(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method CarbonImmutable floorDecade(float $precision = 1) Truncate the current instance decade with given precision.
* @method CarbonImmutable floorDecades(float $precision = 1) Truncate the current instance decade with given precision.
* @method CarbonImmutable ceilDecade(float $precision = 1) Ceil the current instance decade with given precision.
* @method CarbonImmutable ceilDecades(float $precision = 1) Ceil the current instance decade with given precision.
* @method CarbonImmutable roundQuarter(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method CarbonImmutable roundQuarters(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method CarbonImmutable floorQuarter(float $precision = 1) Truncate the current instance quarter with given precision.
* @method CarbonImmutable floorQuarters(float $precision = 1) Truncate the current instance quarter with given precision.
* @method CarbonImmutable ceilQuarter(float $precision = 1) Ceil the current instance quarter with given precision.
* @method CarbonImmutable ceilQuarters(float $precision = 1) Ceil the current instance quarter with given precision.
* @method CarbonImmutable roundMillisecond(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method CarbonImmutable roundMilliseconds(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method CarbonImmutable floorMillisecond(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method CarbonImmutable floorMilliseconds(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method CarbonImmutable ceilMillisecond(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method CarbonImmutable ceilMilliseconds(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method CarbonImmutable roundMicrosecond(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method CarbonImmutable roundMicroseconds(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method CarbonImmutable floorMicrosecond(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method CarbonImmutable floorMicroseconds(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method CarbonImmutable ceilMicrosecond(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method CarbonImmutable ceilMicroseconds(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method string shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method int centuriesInMillennium() Return the number of centuries contained in the current millennium
* @method int|static centuryOfMillennium(?int $century = null) Return the value of the century starting from the beginning of the current millennium when called with no parameters, change the current century when called with an integer value
* @method int|static dayOfCentury(?int $day = null) Return the value of the day starting from the beginning of the current century when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfDecade(?int $day = null) Return the value of the day starting from the beginning of the current decade when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMillennium(?int $day = null) Return the value of the day starting from the beginning of the current millennium when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMonth(?int $day = null) Return the value of the day starting from the beginning of the current month when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfQuarter(?int $day = null) Return the value of the day starting from the beginning of the current quarter when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfWeek(?int $day = null) Return the value of the day starting from the beginning of the current week when called with no parameters, change the current day when called with an integer value
* @method int daysInCentury() Return the number of days contained in the current century
* @method int daysInDecade() Return the number of days contained in the current decade
* @method int daysInMillennium() Return the number of days contained in the current millennium
* @method int daysInMonth() Return the number of days contained in the current month
* @method int daysInQuarter() Return the number of days contained in the current quarter
* @method int daysInWeek() Return the number of days contained in the current week
* @method int daysInYear() Return the number of days contained in the current year
* @method int|static decadeOfCentury(?int $decade = null) Return the value of the decade starting from the beginning of the current century when called with no parameters, change the current decade when called with an integer value
* @method int|static decadeOfMillennium(?int $decade = null) Return the value of the decade starting from the beginning of the current millennium when called with no parameters, change the current decade when called with an integer value
* @method int decadesInCentury() Return the number of decades contained in the current century
* @method int decadesInMillennium() Return the number of decades contained in the current millennium
* @method int|static hourOfCentury(?int $hour = null) Return the value of the hour starting from the beginning of the current century when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDay(?int $hour = null) Return the value of the hour starting from the beginning of the current day when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDecade(?int $hour = null) Return the value of the hour starting from the beginning of the current decade when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMillennium(?int $hour = null) Return the value of the hour starting from the beginning of the current millennium when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMonth(?int $hour = null) Return the value of the hour starting from the beginning of the current month when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfQuarter(?int $hour = null) Return the value of the hour starting from the beginning of the current quarter when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfWeek(?int $hour = null) Return the value of the hour starting from the beginning of the current week when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfYear(?int $hour = null) Return the value of the hour starting from the beginning of the current year when called with no parameters, change the current hour when called with an integer value
* @method int hoursInCentury() Return the number of hours contained in the current century
* @method int hoursInDay() Return the number of hours contained in the current day
* @method int hoursInDecade() Return the number of hours contained in the current decade
* @method int hoursInMillennium() Return the number of hours contained in the current millennium
* @method int hoursInMonth() Return the number of hours contained in the current month
* @method int hoursInQuarter() Return the number of hours contained in the current quarter
* @method int hoursInWeek() Return the number of hours contained in the current week
* @method int hoursInYear() Return the number of hours contained in the current year
* @method int|static microsecondOfCentury(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current century when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDay(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current day when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDecade(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current decade when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfHour(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current hour when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillennium(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millennium when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillisecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millisecond when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMinute(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current minute when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMonth(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current month when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfQuarter(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current quarter when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfSecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current second when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfWeek(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current week when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfYear(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current year when called with no parameters, change the current microsecond when called with an integer value
* @method int microsecondsInCentury() Return the number of microseconds contained in the current century
* @method int microsecondsInDay() Return the number of microseconds contained in the current day
* @method int microsecondsInDecade() Return the number of microseconds contained in the current decade
* @method int microsecondsInHour() Return the number of microseconds contained in the current hour
* @method int microsecondsInMillennium() Return the number of microseconds contained in the current millennium
* @method int microsecondsInMillisecond() Return the number of microseconds contained in the current millisecond
* @method int microsecondsInMinute() Return the number of microseconds contained in the current minute
* @method int microsecondsInMonth() Return the number of microseconds contained in the current month
* @method int microsecondsInQuarter() Return the number of microseconds contained in the current quarter
* @method int microsecondsInSecond() Return the number of microseconds contained in the current second
* @method int microsecondsInWeek() Return the number of microseconds contained in the current week
* @method int microsecondsInYear() Return the number of microseconds contained in the current year
* @method int|static millisecondOfCentury(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current century when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDay(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current day when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDecade(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current decade when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfHour(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current hour when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMillennium(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current millennium when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMinute(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current minute when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMonth(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current month when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfQuarter(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current quarter when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfSecond(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current second when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfWeek(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current week when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfYear(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current year when called with no parameters, change the current millisecond when called with an integer value
* @method int millisecondsInCentury() Return the number of milliseconds contained in the current century
* @method int millisecondsInDay() Return the number of milliseconds contained in the current day
* @method int millisecondsInDecade() Return the number of milliseconds contained in the current decade
* @method int millisecondsInHour() Return the number of milliseconds contained in the current hour
* @method int millisecondsInMillennium() Return the number of milliseconds contained in the current millennium
* @method int millisecondsInMinute() Return the number of milliseconds contained in the current minute
* @method int millisecondsInMonth() Return the number of milliseconds contained in the current month
* @method int millisecondsInQuarter() Return the number of milliseconds contained in the current quarter
* @method int millisecondsInSecond() Return the number of milliseconds contained in the current second
* @method int millisecondsInWeek() Return the number of milliseconds contained in the current week
* @method int millisecondsInYear() Return the number of milliseconds contained in the current year
* @method int|static minuteOfCentury(?int $minute = null) Return the value of the minute starting from the beginning of the current century when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDay(?int $minute = null) Return the value of the minute starting from the beginning of the current day when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDecade(?int $minute = null) Return the value of the minute starting from the beginning of the current decade when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfHour(?int $minute = null) Return the value of the minute starting from the beginning of the current hour when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMillennium(?int $minute = null) Return the value of the minute starting from the beginning of the current millennium when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMonth(?int $minute = null) Return the value of the minute starting from the beginning of the current month when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfQuarter(?int $minute = null) Return the value of the minute starting from the beginning of the current quarter when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfWeek(?int $minute = null) Return the value of the minute starting from the beginning of the current week when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfYear(?int $minute = null) Return the value of the minute starting from the beginning of the current year when called with no parameters, change the current minute when called with an integer value
* @method int minutesInCentury() Return the number of minutes contained in the current century
* @method int minutesInDay() Return the number of minutes contained in the current day
* @method int minutesInDecade() Return the number of minutes contained in the current decade
* @method int minutesInHour() Return the number of minutes contained in the current hour
* @method int minutesInMillennium() Return the number of minutes contained in the current millennium
* @method int minutesInMonth() Return the number of minutes contained in the current month
* @method int minutesInQuarter() Return the number of minutes contained in the current quarter
* @method int minutesInWeek() Return the number of minutes contained in the current week
* @method int minutesInYear() Return the number of minutes contained in the current year
* @method int|static monthOfCentury(?int $month = null) Return the value of the month starting from the beginning of the current century when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfDecade(?int $month = null) Return the value of the month starting from the beginning of the current decade when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfMillennium(?int $month = null) Return the value of the month starting from the beginning of the current millennium when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfQuarter(?int $month = null) Return the value of the month starting from the beginning of the current quarter when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfYear(?int $month = null) Return the value of the month starting from the beginning of the current year when called with no parameters, change the current month when called with an integer value
* @method int monthsInCentury() Return the number of months contained in the current century
* @method int monthsInDecade() Return the number of months contained in the current decade
* @method int monthsInMillennium() Return the number of months contained in the current millennium
* @method int monthsInQuarter() Return the number of months contained in the current quarter
* @method int monthsInYear() Return the number of months contained in the current year
* @method int|static quarterOfCentury(?int $quarter = null) Return the value of the quarter starting from the beginning of the current century when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfDecade(?int $quarter = null) Return the value of the quarter starting from the beginning of the current decade when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfMillennium(?int $quarter = null) Return the value of the quarter starting from the beginning of the current millennium when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfYear(?int $quarter = null) Return the value of the quarter starting from the beginning of the current year when called with no parameters, change the current quarter when called with an integer value
* @method int quartersInCentury() Return the number of quarters contained in the current century
* @method int quartersInDecade() Return the number of quarters contained in the current decade
* @method int quartersInMillennium() Return the number of quarters contained in the current millennium
* @method int quartersInYear() Return the number of quarters contained in the current year
* @method int|static secondOfCentury(?int $second = null) Return the value of the second starting from the beginning of the current century when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDay(?int $second = null) Return the value of the second starting from the beginning of the current day when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDecade(?int $second = null) Return the value of the second starting from the beginning of the current decade when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfHour(?int $second = null) Return the value of the second starting from the beginning of the current hour when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMillennium(?int $second = null) Return the value of the second starting from the beginning of the current millennium when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMinute(?int $second = null) Return the value of the second starting from the beginning of the current minute when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMonth(?int $second = null) Return the value of the second starting from the beginning of the current month when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfQuarter(?int $second = null) Return the value of the second starting from the beginning of the current quarter when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfWeek(?int $second = null) Return the value of the second starting from the beginning of the current week when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfYear(?int $second = null) Return the value of the second starting from the beginning of the current year when called with no parameters, change the current second when called with an integer value
* @method int secondsInCentury() Return the number of seconds contained in the current century
* @method int secondsInDay() Return the number of seconds contained in the current day
* @method int secondsInDecade() Return the number of seconds contained in the current decade
* @method int secondsInHour() Return the number of seconds contained in the current hour
* @method int secondsInMillennium() Return the number of seconds contained in the current millennium
* @method int secondsInMinute() Return the number of seconds contained in the current minute
* @method int secondsInMonth() Return the number of seconds contained in the current month
* @method int secondsInQuarter() Return the number of seconds contained in the current quarter
* @method int secondsInWeek() Return the number of seconds contained in the current week
* @method int secondsInYear() Return the number of seconds contained in the current year
* @method int|static weekOfCentury(?int $week = null) Return the value of the week starting from the beginning of the current century when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfDecade(?int $week = null) Return the value of the week starting from the beginning of the current decade when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMillennium(?int $week = null) Return the value of the week starting from the beginning of the current millennium when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMonth(?int $week = null) Return the value of the week starting from the beginning of the current month when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfQuarter(?int $week = null) Return the value of the week starting from the beginning of the current quarter when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfYear(?int $week = null) Return the value of the week starting from the beginning of the current year when called with no parameters, change the current week when called with an integer value
* @method int weeksInCentury() Return the number of weeks contained in the current century
* @method int weeksInDecade() Return the number of weeks contained in the current decade
* @method int weeksInMillennium() Return the number of weeks contained in the current millennium
* @method int weeksInMonth() Return the number of weeks contained in the current month
* @method int weeksInQuarter() Return the number of weeks contained in the current quarter
* @method int|static yearOfCentury(?int $year = null) Return the value of the year starting from the beginning of the current century when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfDecade(?int $year = null) Return the value of the year starting from the beginning of the current decade when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfMillennium(?int $year = null) Return the value of the year starting from the beginning of the current millennium when called with no parameters, change the current year when called with an integer value
* @method int yearsInCentury() Return the number of years contained in the current century
* @method int yearsInDecade() Return the number of years contained in the current decade
* @method int yearsInMillennium() Return the number of years contained in the current millennium
*
*
*/
class CarbonImmutable extends DateTimeImmutable implements CarbonInterface
{
use Date {
__clone as dateTraitClone;
}
public function __clone(): void
{
$this->dateTraitClone();
$this->endOfTime = false;
$this->startOfTime = false;
}
/**
* Create a very old date representing start of time.
*
* @return static
*/
public static function startOfTime(): static
{
$date = static::parse('0001-01-01')->years(self::getStartOfTimeYear());
$date->startOfTime = true;
return $date;
}
/**
* Create a very far date representing end of time.
*
* @return static
*/
public static function endOfTime(): static
{
$date = static::parse('9999-12-31 23:59:59.999999')->years(self::getEndOfTimeYear());
$date->endOfTime = true;
return $date;
}
/**
* @codeCoverageIgnore
*/
private static function getEndOfTimeYear(): int
{
return 1118290769066902787; // PHP_INT_MAX no longer work since PHP 8.1
}
/**
* @codeCoverageIgnore
*/
private static function getStartOfTimeYear(): int
{
return -1118290769066898816; // PHP_INT_MIN no longer work since PHP 8.1
}
}
src/Carbon/CarbonInterface.php 0000644 00001145120 14753612052 0012306 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use BadMethodCallException;
use Carbon\Exceptions\BadComparisonUnitException;
use Carbon\Exceptions\ImmutableException;
use Carbon\Exceptions\InvalidDateException;
use Carbon\Exceptions\InvalidFormatException;
use Carbon\Exceptions\UnknownGetterException;
use Carbon\Exceptions\UnknownMethodException;
use Carbon\Exceptions\UnknownSetterException;
use Closure;
use DateInterval;
use DateTime;
use DateTimeImmutable;
use DateTimeInterface;
use DateTimeZone;
use JsonSerializable;
use ReflectionException;
use ReturnTypeWillChange;
use Symfony\Contracts\Translation\TranslatorInterface;
use Throwable;
/**
* Common interface for Carbon and CarbonImmutable.
*
*
*
* @property string $localeDayOfWeek the day of week in current locale
* @property string $shortLocaleDayOfWeek the abbreviated day of week in current locale
* @property string $localeMonth the month in current locale
* @property string $shortLocaleMonth the abbreviated month in current locale
* @property int $year
* @property int $yearIso
* @property int $month
* @property int $day
* @property int $hour
* @property int $minute
* @property int $second
* @property int $micro
* @property int $microsecond
* @property int $dayOfWeekIso 1 (for Monday) through 7 (for Sunday)
* @property int|float|string $timestamp seconds since the Unix Epoch
* @property string $englishDayOfWeek the day of week in English
* @property string $shortEnglishDayOfWeek the abbreviated day of week in English
* @property string $englishMonth the month in English
* @property string $shortEnglishMonth the abbreviated month in English
* @property int $milliseconds
* @property int $millisecond
* @property int $milli
* @property int $week 1 through 53
* @property int $isoWeek 1 through 53
* @property int $weekYear year according to week format
* @property int $isoWeekYear year according to ISO week format
* @property int $age does a diffInYears() with default parameters
* @property int $offset the timezone offset in seconds from UTC
* @property int $offsetMinutes the timezone offset in minutes from UTC
* @property int $offsetHours the timezone offset in hours from UTC
* @property CarbonTimeZone $timezone the current timezone
* @property CarbonTimeZone $tz alias of $timezone
* @property int $centuryOfMillennium The value of the century starting from the beginning of the current millennium
* @property int $dayOfCentury The value of the day starting from the beginning of the current century
* @property int $dayOfDecade The value of the day starting from the beginning of the current decade
* @property int $dayOfMillennium The value of the day starting from the beginning of the current millennium
* @property int $dayOfMonth The value of the day starting from the beginning of the current month
* @property int $dayOfQuarter The value of the day starting from the beginning of the current quarter
* @property int $dayOfWeek 0 (for Sunday) through 6 (for Saturday)
* @property int $dayOfYear 1 through 366
* @property int $decadeOfCentury The value of the decade starting from the beginning of the current century
* @property int $decadeOfMillennium The value of the decade starting from the beginning of the current millennium
* @property int $hourOfCentury The value of the hour starting from the beginning of the current century
* @property int $hourOfDay The value of the hour starting from the beginning of the current day
* @property int $hourOfDecade The value of the hour starting from the beginning of the current decade
* @property int $hourOfMillennium The value of the hour starting from the beginning of the current millennium
* @property int $hourOfMonth The value of the hour starting from the beginning of the current month
* @property int $hourOfQuarter The value of the hour starting from the beginning of the current quarter
* @property int $hourOfWeek The value of the hour starting from the beginning of the current week
* @property int $hourOfYear The value of the hour starting from the beginning of the current year
* @property int $microsecondOfCentury The value of the microsecond starting from the beginning of the current century
* @property int $microsecondOfDay The value of the microsecond starting from the beginning of the current day
* @property int $microsecondOfDecade The value of the microsecond starting from the beginning of the current decade
* @property int $microsecondOfHour The value of the microsecond starting from the beginning of the current hour
* @property int $microsecondOfMillennium The value of the microsecond starting from the beginning of the current millennium
* @property int $microsecondOfMillisecond The value of the microsecond starting from the beginning of the current millisecond
* @property int $microsecondOfMinute The value of the microsecond starting from the beginning of the current minute
* @property int $microsecondOfMonth The value of the microsecond starting from the beginning of the current month
* @property int $microsecondOfQuarter The value of the microsecond starting from the beginning of the current quarter
* @property int $microsecondOfSecond The value of the microsecond starting from the beginning of the current second
* @property int $microsecondOfWeek The value of the microsecond starting from the beginning of the current week
* @property int $microsecondOfYear The value of the microsecond starting from the beginning of the current year
* @property int $millisecondOfCentury The value of the millisecond starting from the beginning of the current century
* @property int $millisecondOfDay The value of the millisecond starting from the beginning of the current day
* @property int $millisecondOfDecade The value of the millisecond starting from the beginning of the current decade
* @property int $millisecondOfHour The value of the millisecond starting from the beginning of the current hour
* @property int $millisecondOfMillennium The value of the millisecond starting from the beginning of the current millennium
* @property int $millisecondOfMinute The value of the millisecond starting from the beginning of the current minute
* @property int $millisecondOfMonth The value of the millisecond starting from the beginning of the current month
* @property int $millisecondOfQuarter The value of the millisecond starting from the beginning of the current quarter
* @property int $millisecondOfSecond The value of the millisecond starting from the beginning of the current second
* @property int $millisecondOfWeek The value of the millisecond starting from the beginning of the current week
* @property int $millisecondOfYear The value of the millisecond starting from the beginning of the current year
* @property int $minuteOfCentury The value of the minute starting from the beginning of the current century
* @property int $minuteOfDay The value of the minute starting from the beginning of the current day
* @property int $minuteOfDecade The value of the minute starting from the beginning of the current decade
* @property int $minuteOfHour The value of the minute starting from the beginning of the current hour
* @property int $minuteOfMillennium The value of the minute starting from the beginning of the current millennium
* @property int $minuteOfMonth The value of the minute starting from the beginning of the current month
* @property int $minuteOfQuarter The value of the minute starting from the beginning of the current quarter
* @property int $minuteOfWeek The value of the minute starting from the beginning of the current week
* @property int $minuteOfYear The value of the minute starting from the beginning of the current year
* @property int $monthOfCentury The value of the month starting from the beginning of the current century
* @property int $monthOfDecade The value of the month starting from the beginning of the current decade
* @property int $monthOfMillennium The value of the month starting from the beginning of the current millennium
* @property int $monthOfQuarter The value of the month starting from the beginning of the current quarter
* @property int $monthOfYear The value of the month starting from the beginning of the current year
* @property int $quarterOfCentury The value of the quarter starting from the beginning of the current century
* @property int $quarterOfDecade The value of the quarter starting from the beginning of the current decade
* @property int $quarterOfMillennium The value of the quarter starting from the beginning of the current millennium
* @property int $quarterOfYear The value of the quarter starting from the beginning of the current year
* @property int $secondOfCentury The value of the second starting from the beginning of the current century
* @property int $secondOfDay The value of the second starting from the beginning of the current day
* @property int $secondOfDecade The value of the second starting from the beginning of the current decade
* @property int $secondOfHour The value of the second starting from the beginning of the current hour
* @property int $secondOfMillennium The value of the second starting from the beginning of the current millennium
* @property int $secondOfMinute The value of the second starting from the beginning of the current minute
* @property int $secondOfMonth The value of the second starting from the beginning of the current month
* @property int $secondOfQuarter The value of the second starting from the beginning of the current quarter
* @property int $secondOfWeek The value of the second starting from the beginning of the current week
* @property int $secondOfYear The value of the second starting from the beginning of the current year
* @property int $weekOfCentury The value of the week starting from the beginning of the current century
* @property int $weekOfDecade The value of the week starting from the beginning of the current decade
* @property int $weekOfMillennium The value of the week starting from the beginning of the current millennium
* @property int $weekOfMonth 1 through 5
* @property int $weekOfQuarter The value of the week starting from the beginning of the current quarter
* @property int $weekOfYear ISO-8601 week number of year, weeks starting on Monday
* @property int $yearOfCentury The value of the year starting from the beginning of the current century
* @property int $yearOfDecade The value of the year starting from the beginning of the current decade
* @property int $yearOfMillennium The value of the year starting from the beginning of the current millennium
* @property-read string $latinMeridiem "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
* @property-read string $latinUpperMeridiem "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
* @property-read string $timezoneAbbreviatedName the current timezone abbreviated name
* @property-read string $tzAbbrName alias of $timezoneAbbreviatedName
* @property-read string $dayName long name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortDayName short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $minDayName very short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $monthName long name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortMonthName short name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $meridiem lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read string $upperMeridiem uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read int $noZeroHour current hour from 1 to 24
* @property-read int $isoWeeksInYear 51 through 53
* @property-read int $weekNumberInMonth 1 through 5
* @property-read int $firstWeekDay 0 through 6
* @property-read int $lastWeekDay 0 through 6
* @property-read int $quarter the quarter of this instance, 1 - 4
* @property-read int $decade the decade of this instance
* @property-read int $century the century of this instance
* @property-read int $millennium the millennium of this instance
* @property-read bool $dst daylight savings time indicator, true if DST, false otherwise
* @property-read bool $local checks if the timezone is local, true if local, false otherwise
* @property-read bool $utc checks if the timezone is UTC, true if UTC, false otherwise
* @property-read string $timezoneName the current timezone name
* @property-read string $tzName alias of $timezoneName
* @property-read string $locale locale of the current instance
* @property-read int $centuriesInMillennium The number of centuries contained in the current millennium
* @property-read int $daysInCentury The number of days contained in the current century
* @property-read int $daysInDecade The number of days contained in the current decade
* @property-read int $daysInMillennium The number of days contained in the current millennium
* @property-read int $daysInMonth number of days in the given month
* @property-read int $daysInQuarter The number of days contained in the current quarter
* @property-read int $daysInWeek The number of days contained in the current week
* @property-read int $daysInYear 365 or 366
* @property-read int $decadesInCentury The number of decades contained in the current century
* @property-read int $decadesInMillennium The number of decades contained in the current millennium
* @property-read int $hoursInCentury The number of hours contained in the current century
* @property-read int $hoursInDay The number of hours contained in the current day
* @property-read int $hoursInDecade The number of hours contained in the current decade
* @property-read int $hoursInMillennium The number of hours contained in the current millennium
* @property-read int $hoursInMonth The number of hours contained in the current month
* @property-read int $hoursInQuarter The number of hours contained in the current quarter
* @property-read int $hoursInWeek The number of hours contained in the current week
* @property-read int $hoursInYear The number of hours contained in the current year
* @property-read int $microsecondsInCentury The number of microseconds contained in the current century
* @property-read int $microsecondsInDay The number of microseconds contained in the current day
* @property-read int $microsecondsInDecade The number of microseconds contained in the current decade
* @property-read int $microsecondsInHour The number of microseconds contained in the current hour
* @property-read int $microsecondsInMillennium The number of microseconds contained in the current millennium
* @property-read int $microsecondsInMillisecond The number of microseconds contained in the current millisecond
* @property-read int $microsecondsInMinute The number of microseconds contained in the current minute
* @property-read int $microsecondsInMonth The number of microseconds contained in the current month
* @property-read int $microsecondsInQuarter The number of microseconds contained in the current quarter
* @property-read int $microsecondsInSecond The number of microseconds contained in the current second
* @property-read int $microsecondsInWeek The number of microseconds contained in the current week
* @property-read int $microsecondsInYear The number of microseconds contained in the current year
* @property-read int $millisecondsInCentury The number of milliseconds contained in the current century
* @property-read int $millisecondsInDay The number of milliseconds contained in the current day
* @property-read int $millisecondsInDecade The number of milliseconds contained in the current decade
* @property-read int $millisecondsInHour The number of milliseconds contained in the current hour
* @property-read int $millisecondsInMillennium The number of milliseconds contained in the current millennium
* @property-read int $millisecondsInMinute The number of milliseconds contained in the current minute
* @property-read int $millisecondsInMonth The number of milliseconds contained in the current month
* @property-read int $millisecondsInQuarter The number of milliseconds contained in the current quarter
* @property-read int $millisecondsInSecond The number of milliseconds contained in the current second
* @property-read int $millisecondsInWeek The number of milliseconds contained in the current week
* @property-read int $millisecondsInYear The number of milliseconds contained in the current year
* @property-read int $minutesInCentury The number of minutes contained in the current century
* @property-read int $minutesInDay The number of minutes contained in the current day
* @property-read int $minutesInDecade The number of minutes contained in the current decade
* @property-read int $minutesInHour The number of minutes contained in the current hour
* @property-read int $minutesInMillennium The number of minutes contained in the current millennium
* @property-read int $minutesInMonth The number of minutes contained in the current month
* @property-read int $minutesInQuarter The number of minutes contained in the current quarter
* @property-read int $minutesInWeek The number of minutes contained in the current week
* @property-read int $minutesInYear The number of minutes contained in the current year
* @property-read int $monthsInCentury The number of months contained in the current century
* @property-read int $monthsInDecade The number of months contained in the current decade
* @property-read int $monthsInMillennium The number of months contained in the current millennium
* @property-read int $monthsInQuarter The number of months contained in the current quarter
* @property-read int $monthsInYear The number of months contained in the current year
* @property-read int $quartersInCentury The number of quarters contained in the current century
* @property-read int $quartersInDecade The number of quarters contained in the current decade
* @property-read int $quartersInMillennium The number of quarters contained in the current millennium
* @property-read int $quartersInYear The number of quarters contained in the current year
* @property-read int $secondsInCentury The number of seconds contained in the current century
* @property-read int $secondsInDay The number of seconds contained in the current day
* @property-read int $secondsInDecade The number of seconds contained in the current decade
* @property-read int $secondsInHour The number of seconds contained in the current hour
* @property-read int $secondsInMillennium The number of seconds contained in the current millennium
* @property-read int $secondsInMinute The number of seconds contained in the current minute
* @property-read int $secondsInMonth The number of seconds contained in the current month
* @property-read int $secondsInQuarter The number of seconds contained in the current quarter
* @property-read int $secondsInWeek The number of seconds contained in the current week
* @property-read int $secondsInYear The number of seconds contained in the current year
* @property-read int $weeksInCentury The number of weeks contained in the current century
* @property-read int $weeksInDecade The number of weeks contained in the current decade
* @property-read int $weeksInMillennium The number of weeks contained in the current millennium
* @property-read int $weeksInMonth The number of weeks contained in the current month
* @property-read int $weeksInQuarter The number of weeks contained in the current quarter
* @property-read int $weeksInYear 51 through 53
* @property-read int $yearsInCentury The number of years contained in the current century
* @property-read int $yearsInDecade The number of years contained in the current decade
* @property-read int $yearsInMillennium The number of years contained in the current millennium
*
* @method bool isUtc() Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
* @method bool isLocal() Check if the current instance has non-UTC timezone.
* @method bool isValid() Check if the current instance is a valid date.
* @method bool isDST() Check if the current instance is in a daylight saving time.
* @method bool isSunday() Checks if the instance day is sunday.
* @method bool isMonday() Checks if the instance day is monday.
* @method bool isTuesday() Checks if the instance day is tuesday.
* @method bool isWednesday() Checks if the instance day is wednesday.
* @method bool isThursday() Checks if the instance day is thursday.
* @method bool isFriday() Checks if the instance day is friday.
* @method bool isSaturday() Checks if the instance day is saturday.
* @method bool isSameYear(DateTimeInterface|string $date) Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentYear() Checks if the instance is in the same year as the current moment.
* @method bool isNextYear() Checks if the instance is in the same year as the current moment next year.
* @method bool isLastYear() Checks if the instance is in the same year as the current moment last year.
* @method bool isCurrentMonth() Checks if the instance is in the same month as the current moment.
* @method bool isNextMonth() Checks if the instance is in the same month as the current moment next month.
* @method bool isLastMonth() Checks if the instance is in the same month as the current moment last month.
* @method bool isSameWeek(DateTimeInterface|string $date) Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentWeek() Checks if the instance is in the same week as the current moment.
* @method bool isNextWeek() Checks if the instance is in the same week as the current moment next week.
* @method bool isLastWeek() Checks if the instance is in the same week as the current moment last week.
* @method bool isSameDay(DateTimeInterface|string $date) Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDay() Checks if the instance is in the same day as the current moment.
* @method bool isNextDay() Checks if the instance is in the same day as the current moment next day.
* @method bool isLastDay() Checks if the instance is in the same day as the current moment last day.
* @method bool isSameHour(DateTimeInterface|string $date) Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentHour() Checks if the instance is in the same hour as the current moment.
* @method bool isNextHour() Checks if the instance is in the same hour as the current moment next hour.
* @method bool isLastHour() Checks if the instance is in the same hour as the current moment last hour.
* @method bool isSameMinute(DateTimeInterface|string $date) Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMinute() Checks if the instance is in the same minute as the current moment.
* @method bool isNextMinute() Checks if the instance is in the same minute as the current moment next minute.
* @method bool isLastMinute() Checks if the instance is in the same minute as the current moment last minute.
* @method bool isSameSecond(DateTimeInterface|string $date) Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentSecond() Checks if the instance is in the same second as the current moment.
* @method bool isNextSecond() Checks if the instance is in the same second as the current moment next second.
* @method bool isLastSecond() Checks if the instance is in the same second as the current moment last second.
* @method bool isSameMilli(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMilli() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMilli() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMilli() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMillisecond(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillisecond() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMillisecond() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMillisecond() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMicro(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicro() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicro() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicro() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameMicrosecond(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicrosecond() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicrosecond() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicrosecond() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameDecade(DateTimeInterface|string $date) Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDecade() Checks if the instance is in the same decade as the current moment.
* @method bool isNextDecade() Checks if the instance is in the same decade as the current moment next decade.
* @method bool isLastDecade() Checks if the instance is in the same decade as the current moment last decade.
* @method bool isSameCentury(DateTimeInterface|string $date) Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentCentury() Checks if the instance is in the same century as the current moment.
* @method bool isNextCentury() Checks if the instance is in the same century as the current moment next century.
* @method bool isLastCentury() Checks if the instance is in the same century as the current moment last century.
* @method bool isSameMillennium(DateTimeInterface|string $date) Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillennium() Checks if the instance is in the same millennium as the current moment.
* @method bool isNextMillennium() Checks if the instance is in the same millennium as the current moment next millennium.
* @method bool isLastMillennium() Checks if the instance is in the same millennium as the current moment last millennium.
* @method bool isCurrentQuarter() Checks if the instance is in the same quarter as the current moment.
* @method bool isNextQuarter() Checks if the instance is in the same quarter as the current moment next quarter.
* @method bool isLastQuarter() Checks if the instance is in the same quarter as the current moment last quarter.
* @method CarbonInterface years(int $value) Set current instance year to the given value.
* @method CarbonInterface year(int $value) Set current instance year to the given value.
* @method CarbonInterface setYears(int $value) Set current instance year to the given value.
* @method CarbonInterface setYear(int $value) Set current instance year to the given value.
* @method CarbonInterface months(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface month(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface setMonths(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface setMonth(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface days(int $value) Set current instance day to the given value.
* @method CarbonInterface day(int $value) Set current instance day to the given value.
* @method CarbonInterface setDays(int $value) Set current instance day to the given value.
* @method CarbonInterface setDay(int $value) Set current instance day to the given value.
* @method CarbonInterface hours(int $value) Set current instance hour to the given value.
* @method CarbonInterface hour(int $value) Set current instance hour to the given value.
* @method CarbonInterface setHours(int $value) Set current instance hour to the given value.
* @method CarbonInterface setHour(int $value) Set current instance hour to the given value.
* @method CarbonInterface minutes(int $value) Set current instance minute to the given value.
* @method CarbonInterface minute(int $value) Set current instance minute to the given value.
* @method CarbonInterface setMinutes(int $value) Set current instance minute to the given value.
* @method CarbonInterface setMinute(int $value) Set current instance minute to the given value.
* @method CarbonInterface seconds(int $value) Set current instance second to the given value.
* @method CarbonInterface second(int $value) Set current instance second to the given value.
* @method CarbonInterface setSeconds(int $value) Set current instance second to the given value.
* @method CarbonInterface setSecond(int $value) Set current instance second to the given value.
* @method CarbonInterface millis(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface milli(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMillis(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMilli(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface milliseconds(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface millisecond(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMilliseconds(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMillisecond(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface micros(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface micro(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicros(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicro(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface microseconds(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface microsecond(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicroseconds(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicrosecond(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface addYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addYear() Add one year to the instance (using date interval).
* @method CarbonInterface subYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subYear() Sub one year to the instance (using date interval).
* @method CarbonInterface addYearsWithOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addYearWithOverflow() Add one year to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subYearsWithOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subYearWithOverflow() Sub one year to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addYearsWithoutOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearWithoutOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearsWithoutOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearWithoutOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearsWithNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearWithNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearsWithNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearWithNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearsNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearsNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMonth() Add one month to the instance (using date interval).
* @method CarbonInterface subMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMonth() Sub one month to the instance (using date interval).
* @method CarbonInterface addMonthsWithOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMonthWithOverflow() Add one month to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMonthsWithOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMonthWithOverflow() Sub one month to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMonthsWithoutOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthWithoutOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthsWithoutOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthWithoutOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthsWithNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthWithNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthsWithNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthWithNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthsNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthsNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addDay() Add one day to the instance (using date interval).
* @method CarbonInterface subDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subDay() Sub one day to the instance (using date interval).
* @method CarbonInterface addHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addHour() Add one hour to the instance (using date interval).
* @method CarbonInterface subHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subHour() Sub one hour to the instance (using date interval).
* @method CarbonInterface addMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMinute() Add one minute to the instance (using date interval).
* @method CarbonInterface subMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMinute() Sub one minute to the instance (using date interval).
* @method CarbonInterface addSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addSecond() Add one second to the instance (using date interval).
* @method CarbonInterface subSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subSecond() Sub one second to the instance (using date interval).
* @method CarbonInterface addMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMilli() Add one millisecond to the instance (using date interval).
* @method CarbonInterface subMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMilli() Sub one millisecond to the instance (using date interval).
* @method CarbonInterface addMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMillisecond() Add one millisecond to the instance (using date interval).
* @method CarbonInterface subMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMillisecond() Sub one millisecond to the instance (using date interval).
* @method CarbonInterface addMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMicro() Add one microsecond to the instance (using date interval).
* @method CarbonInterface subMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMicro() Sub one microsecond to the instance (using date interval).
* @method CarbonInterface addMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMicrosecond() Add one microsecond to the instance (using date interval).
* @method CarbonInterface subMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMicrosecond() Sub one microsecond to the instance (using date interval).
* @method CarbonInterface addMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMillennium() Add one millennium to the instance (using date interval).
* @method CarbonInterface subMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMillennium() Sub one millennium to the instance (using date interval).
* @method CarbonInterface addMillenniaWithOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMillenniumWithOverflow() Add one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMillenniaWithOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMillenniumWithOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMillenniaWithoutOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniumWithoutOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniaWithoutOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniumWithoutOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniaWithNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniumWithNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniaWithNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniumWithNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniaNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniumNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniaNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniumNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addCentury() Add one century to the instance (using date interval).
* @method CarbonInterface subCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subCentury() Sub one century to the instance (using date interval).
* @method CarbonInterface addCenturiesWithOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addCenturyWithOverflow() Add one century to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subCenturiesWithOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subCenturyWithOverflow() Sub one century to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addCenturiesWithoutOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturyWithoutOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturiesWithoutOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturyWithoutOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturiesWithNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturyWithNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturiesWithNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturyWithNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturiesNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturyNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturiesNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturyNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addDecade() Add one decade to the instance (using date interval).
* @method CarbonInterface subDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subDecade() Sub one decade to the instance (using date interval).
* @method CarbonInterface addDecadesWithOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addDecadeWithOverflow() Add one decade to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subDecadesWithOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subDecadeWithOverflow() Sub one decade to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addDecadesWithoutOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadeWithoutOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadesWithoutOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadeWithoutOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadesWithNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadeWithNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadesWithNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadeWithNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadesNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadeNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadesNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadeNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addQuarter() Add one quarter to the instance (using date interval).
* @method CarbonInterface subQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subQuarter() Sub one quarter to the instance (using date interval).
* @method CarbonInterface addQuartersWithOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addQuarterWithOverflow() Add one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subQuartersWithOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subQuarterWithOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addQuartersWithoutOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarterWithoutOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuartersWithoutOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuarterWithoutOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuartersWithNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarterWithNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuartersWithNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuarterWithNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuartersNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarterNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuartersNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuarterNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addWeek() Add one week to the instance (using date interval).
* @method CarbonInterface subWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subWeek() Sub one week to the instance (using date interval).
* @method CarbonInterface addWeekdays(int|float $value = 1) Add weekdays (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addWeekday() Add one weekday to the instance (using date interval).
* @method CarbonInterface subWeekdays(int|float $value = 1) Sub weekdays (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subWeekday() Sub one weekday to the instance (using date interval).
* @method CarbonInterface addUTCMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMicro() Add one microsecond to the instance (using timestamp).
* @method CarbonInterface subUTCMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMicro() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicros(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method CarbonInterface addUTCMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMicrosecond() Add one microsecond to the instance (using timestamp).
* @method CarbonInterface subUTCMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMicrosecond() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicroseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method CarbonInterface addUTCMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMilli() Add one millisecond to the instance (using timestamp).
* @method CarbonInterface subUTCMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMilli() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMillis(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method CarbonInterface addUTCMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMillisecond() Add one millisecond to the instance (using timestamp).
* @method CarbonInterface subUTCMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMillisecond() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMilliseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method CarbonInterface addUTCSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCSecond() Add one second to the instance (using timestamp).
* @method CarbonInterface subUTCSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCSecond() Sub one second to the instance (using timestamp).
* @method CarbonPeriod secondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
* @method float diffInUTCSeconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of seconds.
* @method CarbonInterface addUTCMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMinute() Add one minute to the instance (using timestamp).
* @method CarbonInterface subUTCMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMinute() Sub one minute to the instance (using timestamp).
* @method CarbonPeriod minutesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
* @method float diffInUTCMinutes(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of minutes.
* @method CarbonInterface addUTCHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCHour() Add one hour to the instance (using timestamp).
* @method CarbonInterface subUTCHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCHour() Sub one hour to the instance (using timestamp).
* @method CarbonPeriod hoursUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
* @method float diffInUTCHours(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of hours.
* @method CarbonInterface addUTCDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCDay() Add one day to the instance (using timestamp).
* @method CarbonInterface subUTCDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCDay() Sub one day to the instance (using timestamp).
* @method CarbonPeriod daysUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
* @method float diffInUTCDays(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of days.
* @method CarbonInterface addUTCWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCWeek() Add one week to the instance (using timestamp).
* @method CarbonInterface subUTCWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCWeek() Sub one week to the instance (using timestamp).
* @method CarbonPeriod weeksUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
* @method float diffInUTCWeeks(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of weeks.
* @method CarbonInterface addUTCMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMonth() Add one month to the instance (using timestamp).
* @method CarbonInterface subUTCMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMonth() Sub one month to the instance (using timestamp).
* @method CarbonPeriod monthsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
* @method float diffInUTCMonths(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of months.
* @method CarbonInterface addUTCQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCQuarter() Add one quarter to the instance (using timestamp).
* @method CarbonInterface subUTCQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCQuarter() Sub one quarter to the instance (using timestamp).
* @method CarbonPeriod quartersUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
* @method float diffInUTCQuarters(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of quarters.
* @method CarbonInterface addUTCYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCYear() Add one year to the instance (using timestamp).
* @method CarbonInterface subUTCYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCYear() Sub one year to the instance (using timestamp).
* @method CarbonPeriod yearsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
* @method float diffInUTCYears(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of years.
* @method CarbonInterface addUTCDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCDecade() Add one decade to the instance (using timestamp).
* @method CarbonInterface subUTCDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCDecade() Sub one decade to the instance (using timestamp).
* @method CarbonPeriod decadesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
* @method float diffInUTCDecades(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of decades.
* @method CarbonInterface addUTCCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCCentury() Add one century to the instance (using timestamp).
* @method CarbonInterface subUTCCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCCentury() Sub one century to the instance (using timestamp).
* @method CarbonPeriod centuriesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
* @method float diffInUTCCenturies(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of centuries.
* @method CarbonInterface addUTCMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMillennium() Add one millennium to the instance (using timestamp).
* @method CarbonInterface subUTCMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMillennium() Sub one millennium to the instance (using timestamp).
* @method CarbonPeriod millenniaUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
* @method float diffInUTCMillennia(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of millennia.
* @method CarbonInterface roundYear(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method CarbonInterface roundYears(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method CarbonInterface floorYear(float $precision = 1) Truncate the current instance year with given precision.
* @method CarbonInterface floorYears(float $precision = 1) Truncate the current instance year with given precision.
* @method CarbonInterface ceilYear(float $precision = 1) Ceil the current instance year with given precision.
* @method CarbonInterface ceilYears(float $precision = 1) Ceil the current instance year with given precision.
* @method CarbonInterface roundMonth(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method CarbonInterface roundMonths(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method CarbonInterface floorMonth(float $precision = 1) Truncate the current instance month with given precision.
* @method CarbonInterface floorMonths(float $precision = 1) Truncate the current instance month with given precision.
* @method CarbonInterface ceilMonth(float $precision = 1) Ceil the current instance month with given precision.
* @method CarbonInterface ceilMonths(float $precision = 1) Ceil the current instance month with given precision.
* @method CarbonInterface roundDay(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method CarbonInterface roundDays(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method CarbonInterface floorDay(float $precision = 1) Truncate the current instance day with given precision.
* @method CarbonInterface floorDays(float $precision = 1) Truncate the current instance day with given precision.
* @method CarbonInterface ceilDay(float $precision = 1) Ceil the current instance day with given precision.
* @method CarbonInterface ceilDays(float $precision = 1) Ceil the current instance day with given precision.
* @method CarbonInterface roundHour(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method CarbonInterface roundHours(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method CarbonInterface floorHour(float $precision = 1) Truncate the current instance hour with given precision.
* @method CarbonInterface floorHours(float $precision = 1) Truncate the current instance hour with given precision.
* @method CarbonInterface ceilHour(float $precision = 1) Ceil the current instance hour with given precision.
* @method CarbonInterface ceilHours(float $precision = 1) Ceil the current instance hour with given precision.
* @method CarbonInterface roundMinute(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method CarbonInterface roundMinutes(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method CarbonInterface floorMinute(float $precision = 1) Truncate the current instance minute with given precision.
* @method CarbonInterface floorMinutes(float $precision = 1) Truncate the current instance minute with given precision.
* @method CarbonInterface ceilMinute(float $precision = 1) Ceil the current instance minute with given precision.
* @method CarbonInterface ceilMinutes(float $precision = 1) Ceil the current instance minute with given precision.
* @method CarbonInterface roundSecond(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method CarbonInterface roundSeconds(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method CarbonInterface floorSecond(float $precision = 1) Truncate the current instance second with given precision.
* @method CarbonInterface floorSeconds(float $precision = 1) Truncate the current instance second with given precision.
* @method CarbonInterface ceilSecond(float $precision = 1) Ceil the current instance second with given precision.
* @method CarbonInterface ceilSeconds(float $precision = 1) Ceil the current instance second with given precision.
* @method CarbonInterface roundMillennium(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method CarbonInterface roundMillennia(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method CarbonInterface floorMillennium(float $precision = 1) Truncate the current instance millennium with given precision.
* @method CarbonInterface floorMillennia(float $precision = 1) Truncate the current instance millennium with given precision.
* @method CarbonInterface ceilMillennium(float $precision = 1) Ceil the current instance millennium with given precision.
* @method CarbonInterface ceilMillennia(float $precision = 1) Ceil the current instance millennium with given precision.
* @method CarbonInterface roundCentury(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method CarbonInterface roundCenturies(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method CarbonInterface floorCentury(float $precision = 1) Truncate the current instance century with given precision.
* @method CarbonInterface floorCenturies(float $precision = 1) Truncate the current instance century with given precision.
* @method CarbonInterface ceilCentury(float $precision = 1) Ceil the current instance century with given precision.
* @method CarbonInterface ceilCenturies(float $precision = 1) Ceil the current instance century with given precision.
* @method CarbonInterface roundDecade(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method CarbonInterface roundDecades(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method CarbonInterface floorDecade(float $precision = 1) Truncate the current instance decade with given precision.
* @method CarbonInterface floorDecades(float $precision = 1) Truncate the current instance decade with given precision.
* @method CarbonInterface ceilDecade(float $precision = 1) Ceil the current instance decade with given precision.
* @method CarbonInterface ceilDecades(float $precision = 1) Ceil the current instance decade with given precision.
* @method CarbonInterface roundQuarter(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method CarbonInterface roundQuarters(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method CarbonInterface floorQuarter(float $precision = 1) Truncate the current instance quarter with given precision.
* @method CarbonInterface floorQuarters(float $precision = 1) Truncate the current instance quarter with given precision.
* @method CarbonInterface ceilQuarter(float $precision = 1) Ceil the current instance quarter with given precision.
* @method CarbonInterface ceilQuarters(float $precision = 1) Ceil the current instance quarter with given precision.
* @method CarbonInterface roundMillisecond(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method CarbonInterface roundMilliseconds(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method CarbonInterface floorMillisecond(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method CarbonInterface floorMilliseconds(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method CarbonInterface ceilMillisecond(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method CarbonInterface ceilMilliseconds(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method CarbonInterface roundMicrosecond(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method CarbonInterface roundMicroseconds(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method CarbonInterface floorMicrosecond(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method CarbonInterface floorMicroseconds(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method CarbonInterface ceilMicrosecond(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method CarbonInterface ceilMicroseconds(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method string shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method int centuriesInMillennium() Return the number of centuries contained in the current millennium
* @method int|static centuryOfMillennium(?int $century = null) Return the value of the century starting from the beginning of the current millennium when called with no parameters, change the current century when called with an integer value
* @method int|static dayOfCentury(?int $day = null) Return the value of the day starting from the beginning of the current century when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfDecade(?int $day = null) Return the value of the day starting from the beginning of the current decade when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMillennium(?int $day = null) Return the value of the day starting from the beginning of the current millennium when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMonth(?int $day = null) Return the value of the day starting from the beginning of the current month when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfQuarter(?int $day = null) Return the value of the day starting from the beginning of the current quarter when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfWeek(?int $day = null) Return the value of the day starting from the beginning of the current week when called with no parameters, change the current day when called with an integer value
* @method int daysInCentury() Return the number of days contained in the current century
* @method int daysInDecade() Return the number of days contained in the current decade
* @method int daysInMillennium() Return the number of days contained in the current millennium
* @method int daysInMonth() Return the number of days contained in the current month
* @method int daysInQuarter() Return the number of days contained in the current quarter
* @method int daysInWeek() Return the number of days contained in the current week
* @method int daysInYear() Return the number of days contained in the current year
* @method int|static decadeOfCentury(?int $decade = null) Return the value of the decade starting from the beginning of the current century when called with no parameters, change the current decade when called with an integer value
* @method int|static decadeOfMillennium(?int $decade = null) Return the value of the decade starting from the beginning of the current millennium when called with no parameters, change the current decade when called with an integer value
* @method int decadesInCentury() Return the number of decades contained in the current century
* @method int decadesInMillennium() Return the number of decades contained in the current millennium
* @method int|static hourOfCentury(?int $hour = null) Return the value of the hour starting from the beginning of the current century when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDay(?int $hour = null) Return the value of the hour starting from the beginning of the current day when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDecade(?int $hour = null) Return the value of the hour starting from the beginning of the current decade when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMillennium(?int $hour = null) Return the value of the hour starting from the beginning of the current millennium when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMonth(?int $hour = null) Return the value of the hour starting from the beginning of the current month when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfQuarter(?int $hour = null) Return the value of the hour starting from the beginning of the current quarter when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfWeek(?int $hour = null) Return the value of the hour starting from the beginning of the current week when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfYear(?int $hour = null) Return the value of the hour starting from the beginning of the current year when called with no parameters, change the current hour when called with an integer value
* @method int hoursInCentury() Return the number of hours contained in the current century
* @method int hoursInDay() Return the number of hours contained in the current day
* @method int hoursInDecade() Return the number of hours contained in the current decade
* @method int hoursInMillennium() Return the number of hours contained in the current millennium
* @method int hoursInMonth() Return the number of hours contained in the current month
* @method int hoursInQuarter() Return the number of hours contained in the current quarter
* @method int hoursInWeek() Return the number of hours contained in the current week
* @method int hoursInYear() Return the number of hours contained in the current year
* @method int|static microsecondOfCentury(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current century when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDay(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current day when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDecade(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current decade when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfHour(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current hour when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillennium(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millennium when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillisecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millisecond when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMinute(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current minute when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMonth(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current month when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfQuarter(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current quarter when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfSecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current second when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfWeek(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current week when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfYear(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current year when called with no parameters, change the current microsecond when called with an integer value
* @method int microsecondsInCentury() Return the number of microseconds contained in the current century
* @method int microsecondsInDay() Return the number of microseconds contained in the current day
* @method int microsecondsInDecade() Return the number of microseconds contained in the current decade
* @method int microsecondsInHour() Return the number of microseconds contained in the current hour
* @method int microsecondsInMillennium() Return the number of microseconds contained in the current millennium
* @method int microsecondsInMillisecond() Return the number of microseconds contained in the current millisecond
* @method int microsecondsInMinute() Return the number of microseconds contained in the current minute
* @method int microsecondsInMonth() Return the number of microseconds contained in the current month
* @method int microsecondsInQuarter() Return the number of microseconds contained in the current quarter
* @method int microsecondsInSecond() Return the number of microseconds contained in the current second
* @method int microsecondsInWeek() Return the number of microseconds contained in the current week
* @method int microsecondsInYear() Return the number of microseconds contained in the current year
* @method int|static millisecondOfCentury(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current century when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDay(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current day when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDecade(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current decade when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfHour(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current hour when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMillennium(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current millennium when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMinute(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current minute when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMonth(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current month when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfQuarter(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current quarter when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfSecond(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current second when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfWeek(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current week when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfYear(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current year when called with no parameters, change the current millisecond when called with an integer value
* @method int millisecondsInCentury() Return the number of milliseconds contained in the current century
* @method int millisecondsInDay() Return the number of milliseconds contained in the current day
* @method int millisecondsInDecade() Return the number of milliseconds contained in the current decade
* @method int millisecondsInHour() Return the number of milliseconds contained in the current hour
* @method int millisecondsInMillennium() Return the number of milliseconds contained in the current millennium
* @method int millisecondsInMinute() Return the number of milliseconds contained in the current minute
* @method int millisecondsInMonth() Return the number of milliseconds contained in the current month
* @method int millisecondsInQuarter() Return the number of milliseconds contained in the current quarter
* @method int millisecondsInSecond() Return the number of milliseconds contained in the current second
* @method int millisecondsInWeek() Return the number of milliseconds contained in the current week
* @method int millisecondsInYear() Return the number of milliseconds contained in the current year
* @method int|static minuteOfCentury(?int $minute = null) Return the value of the minute starting from the beginning of the current century when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDay(?int $minute = null) Return the value of the minute starting from the beginning of the current day when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDecade(?int $minute = null) Return the value of the minute starting from the beginning of the current decade when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfHour(?int $minute = null) Return the value of the minute starting from the beginning of the current hour when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMillennium(?int $minute = null) Return the value of the minute starting from the beginning of the current millennium when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMonth(?int $minute = null) Return the value of the minute starting from the beginning of the current month when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfQuarter(?int $minute = null) Return the value of the minute starting from the beginning of the current quarter when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfWeek(?int $minute = null) Return the value of the minute starting from the beginning of the current week when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfYear(?int $minute = null) Return the value of the minute starting from the beginning of the current year when called with no parameters, change the current minute when called with an integer value
* @method int minutesInCentury() Return the number of minutes contained in the current century
* @method int minutesInDay() Return the number of minutes contained in the current day
* @method int minutesInDecade() Return the number of minutes contained in the current decade
* @method int minutesInHour() Return the number of minutes contained in the current hour
* @method int minutesInMillennium() Return the number of minutes contained in the current millennium
* @method int minutesInMonth() Return the number of minutes contained in the current month
* @method int minutesInQuarter() Return the number of minutes contained in the current quarter
* @method int minutesInWeek() Return the number of minutes contained in the current week
* @method int minutesInYear() Return the number of minutes contained in the current year
* @method int|static monthOfCentury(?int $month = null) Return the value of the month starting from the beginning of the current century when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfDecade(?int $month = null) Return the value of the month starting from the beginning of the current decade when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfMillennium(?int $month = null) Return the value of the month starting from the beginning of the current millennium when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfQuarter(?int $month = null) Return the value of the month starting from the beginning of the current quarter when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfYear(?int $month = null) Return the value of the month starting from the beginning of the current year when called with no parameters, change the current month when called with an integer value
* @method int monthsInCentury() Return the number of months contained in the current century
* @method int monthsInDecade() Return the number of months contained in the current decade
* @method int monthsInMillennium() Return the number of months contained in the current millennium
* @method int monthsInQuarter() Return the number of months contained in the current quarter
* @method int monthsInYear() Return the number of months contained in the current year
* @method int|static quarterOfCentury(?int $quarter = null) Return the value of the quarter starting from the beginning of the current century when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfDecade(?int $quarter = null) Return the value of the quarter starting from the beginning of the current decade when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfMillennium(?int $quarter = null) Return the value of the quarter starting from the beginning of the current millennium when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfYear(?int $quarter = null) Return the value of the quarter starting from the beginning of the current year when called with no parameters, change the current quarter when called with an integer value
* @method int quartersInCentury() Return the number of quarters contained in the current century
* @method int quartersInDecade() Return the number of quarters contained in the current decade
* @method int quartersInMillennium() Return the number of quarters contained in the current millennium
* @method int quartersInYear() Return the number of quarters contained in the current year
* @method int|static secondOfCentury(?int $second = null) Return the value of the second starting from the beginning of the current century when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDay(?int $second = null) Return the value of the second starting from the beginning of the current day when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDecade(?int $second = null) Return the value of the second starting from the beginning of the current decade when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfHour(?int $second = null) Return the value of the second starting from the beginning of the current hour when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMillennium(?int $second = null) Return the value of the second starting from the beginning of the current millennium when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMinute(?int $second = null) Return the value of the second starting from the beginning of the current minute when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMonth(?int $second = null) Return the value of the second starting from the beginning of the current month when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfQuarter(?int $second = null) Return the value of the second starting from the beginning of the current quarter when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfWeek(?int $second = null) Return the value of the second starting from the beginning of the current week when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfYear(?int $second = null) Return the value of the second starting from the beginning of the current year when called with no parameters, change the current second when called with an integer value
* @method int secondsInCentury() Return the number of seconds contained in the current century
* @method int secondsInDay() Return the number of seconds contained in the current day
* @method int secondsInDecade() Return the number of seconds contained in the current decade
* @method int secondsInHour() Return the number of seconds contained in the current hour
* @method int secondsInMillennium() Return the number of seconds contained in the current millennium
* @method int secondsInMinute() Return the number of seconds contained in the current minute
* @method int secondsInMonth() Return the number of seconds contained in the current month
* @method int secondsInQuarter() Return the number of seconds contained in the current quarter
* @method int secondsInWeek() Return the number of seconds contained in the current week
* @method int secondsInYear() Return the number of seconds contained in the current year
* @method int|static weekOfCentury(?int $week = null) Return the value of the week starting from the beginning of the current century when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfDecade(?int $week = null) Return the value of the week starting from the beginning of the current decade when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMillennium(?int $week = null) Return the value of the week starting from the beginning of the current millennium when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMonth(?int $week = null) Return the value of the week starting from the beginning of the current month when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfQuarter(?int $week = null) Return the value of the week starting from the beginning of the current quarter when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfYear(?int $week = null) Return the value of the week starting from the beginning of the current year when called with no parameters, change the current week when called with an integer value
* @method int weeksInCentury() Return the number of weeks contained in the current century
* @method int weeksInDecade() Return the number of weeks contained in the current decade
* @method int weeksInMillennium() Return the number of weeks contained in the current millennium
* @method int weeksInMonth() Return the number of weeks contained in the current month
* @method int weeksInQuarter() Return the number of weeks contained in the current quarter
* @method int|static yearOfCentury(?int $year = null) Return the value of the year starting from the beginning of the current century when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfDecade(?int $year = null) Return the value of the year starting from the beginning of the current decade when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfMillennium(?int $year = null) Return the value of the year starting from the beginning of the current millennium when called with no parameters, change the current year when called with an integer value
* @method int yearsInCentury() Return the number of years contained in the current century
* @method int yearsInDecade() Return the number of years contained in the current decade
* @method int yearsInMillennium() Return the number of years contained in the current millennium
*
*
*
* @codeCoverageIgnore
*/
interface CarbonInterface extends DateTimeInterface, JsonSerializable
{
/**
* Diff wording options(expressed in octal).
*/
public const NO_ZERO_DIFF = 01;
public const JUST_NOW = 02;
public const ONE_DAY_WORDS = 04;
public const TWO_DAY_WORDS = 010;
public const SEQUENTIAL_PARTS_ONLY = 020;
public const ROUND = 040;
public const FLOOR = 0100;
public const CEIL = 0200;
/**
* Diff syntax options.
*/
public const DIFF_ABSOLUTE = 1; // backward compatibility with true
public const DIFF_RELATIVE_AUTO = 0; // backward compatibility with false
public const DIFF_RELATIVE_TO_NOW = 2;
public const DIFF_RELATIVE_TO_OTHER = 3;
/**
* Translate string options.
*/
public const TRANSLATE_MONTHS = 1;
public const TRANSLATE_DAYS = 2;
public const TRANSLATE_UNITS = 4;
public const TRANSLATE_MERIDIEM = 8;
public const TRANSLATE_DIFF = 0x10;
public const TRANSLATE_ALL = self::TRANSLATE_MONTHS | self::TRANSLATE_DAYS | self::TRANSLATE_UNITS | self::TRANSLATE_MERIDIEM | self::TRANSLATE_DIFF;
/**
* The day constants.
*/
public const SUNDAY = 0;
public const MONDAY = 1;
public const TUESDAY = 2;
public const WEDNESDAY = 3;
public const THURSDAY = 4;
public const FRIDAY = 5;
public const SATURDAY = 6;
/**
* The month constants.
* These aren't used by Carbon itself but exist for
* convenience sake alone.
*/
public const JANUARY = 1;
public const FEBRUARY = 2;
public const MARCH = 3;
public const APRIL = 4;
public const MAY = 5;
public const JUNE = 6;
public const JULY = 7;
public const AUGUST = 8;
public const SEPTEMBER = 9;
public const OCTOBER = 10;
public const NOVEMBER = 11;
public const DECEMBER = 12;
/**
* Number of X in Y.
*/
public const YEARS_PER_MILLENNIUM = 1_000;
public const YEARS_PER_CENTURY = 100;
public const YEARS_PER_DECADE = 10;
public const MONTHS_PER_YEAR = 12;
public const MONTHS_PER_QUARTER = 3;
public const QUARTERS_PER_YEAR = 4;
public const WEEKS_PER_YEAR = 52;
public const WEEKS_PER_MONTH = 4;
public const DAYS_PER_YEAR = 365;
public const DAYS_PER_WEEK = 7;
public const HOURS_PER_DAY = 24;
public const MINUTES_PER_HOUR = 60;
public const SECONDS_PER_MINUTE = 60;
public const MILLISECONDS_PER_SECOND = 1_000;
public const MICROSECONDS_PER_MILLISECOND = 1_000;
public const MICROSECONDS_PER_SECOND = 1_000_000;
/**
* Special settings to get the start of week from current locale culture.
*/
public const WEEK_DAY_AUTO = 'auto';
/**
* RFC7231 DateTime format.
*
* @var string
*/
public const RFC7231_FORMAT = 'D, d M Y H:i:s \G\M\T';
/**
* Default format to use for __toString method when type juggling occurs.
*
* @var string
*/
public const DEFAULT_TO_STRING_FORMAT = 'Y-m-d H:i:s';
/**
* Format for converting mocked time, includes microseconds.
*
* @var string
*/
public const MOCK_DATETIME_FORMAT = 'Y-m-d H:i:s.u';
/**
* Pattern detection for ->isoFormat and ::createFromIsoFormat.
*
* @var string
*/
public const ISO_FORMAT_REGEXP = '(O[YMDHhms]|[Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY?|g{1,5}|G{1,5}|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?)';
/**
* Default locale (language and region).
*
* @var string
*/
public const DEFAULT_LOCALE = 'en';
//
/**
* Dynamically handle calls to the class.
*
* @param string $method magic method name called
* @param array $parameters parameters list
*
* @throws UnknownMethodException|BadMethodCallException|ReflectionException|Throwable
*/
public function __call(string $method, array $parameters): mixed;
/**
* Dynamically handle calls to the class.
*
* @param string $method magic method name called
* @param array $parameters parameters list
*
* @throws BadMethodCallException
*/
public static function __callStatic(string $method, array $parameters): mixed;
/**
* Update constructedObjectId on cloned.
*/
public function __clone(): void;
/**
* Create a new Carbon instance.
*
* Please see the testing aids section (specifically static::setTestNow())
* for more on the possibility of this constructor returning a test instance.
*
* @throws InvalidFormatException
*/
public function __construct(DateTimeInterface|WeekDay|Month|string|int|float|null $time = null, DateTimeZone|string|int|null $timezone = null);
/**
* Show truthy properties on var_dump().
*/
public function __debugInfo(): array;
/**
* Get a part of the Carbon object.
*
* @throws UnknownGetterException
*
* @return string|int|bool|DateTimeZone|null
*/
public function __get(string $name): mixed;
/**
* Check if an attribute exists on the object
*
* @param string $name
*
* @return bool
*/
public function __isset($name);
/**
* Set a part of the Carbon object
*
* @param string $name
* @param string|int|DateTimeZone $value
*
* @throws UnknownSetterException|ReflectionException
*
* @return void
*/
public function __set($name, $value);
/**
* The __set_state handler.
*
* @param string|array $dump
*
* @return static
*/
#[ReturnTypeWillChange]
public static function __set_state($dump): static;
/**
* Returns the list of properties to dump on serialize() called on.
*
* Only used by PHP < 7.4.
*
* @return array
*/
public function __sleep();
/**
* Format the instance as a string using the set format
*
* @example
* ```
* echo Carbon::now(); // Carbon instances can be cast to string
* ```
*/
public function __toString();
/**
* Add given units or interval to the current instance.
*
* @example $date->add('hour', 3)
* @example $date->add(15, 'days')
* @example $date->add(CarbonInterval::days(4))
*
* @param Unit|string|DateInterval|Closure|CarbonConverterInterface $unit
* @param int|float $value
* @param bool|null $overflow
*
* @return static
*/
#[ReturnTypeWillChange]
public function add($unit, $value = 1, ?bool $overflow = null): static;
/**
* @deprecated Prefer to use add addUTCUnit() which more accurately defines what it's doing.
*
* Add seconds to the instance using timestamp. Positive $value travels
* forward while negative $value travels into the past.
*
* @param string $unit
* @param int|float|null $value
*
* @return static
*/
public function addRealUnit(string $unit, $value = 1): static;
/**
* Add seconds to the instance using timestamp. Positive $value travels
* forward while negative $value travels into the past.
*
* @param string $unit
* @param int|float|null $value
*
* @return static
*/
public function addUTCUnit(string $unit, $value = 1): static;
/**
* Add given units to the current instance.
*/
public function addUnit(Unit|string $unit, $value = 1, ?bool $overflow = null): static;
/**
* Add any unit to a new value without overflowing current other unit given.
*
* @param string $valueUnit unit name to modify
* @param int $value amount to add to the input unit
* @param string $overflowUnit unit name to not overflow
*/
public function addUnitNoOverflow(string $valueUnit, int $value, string $overflowUnit): static;
/**
* Get the difference in a human readable format in the current locale from an other
* instance given to now
*
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single part)
* @param int $options human diff options
*
* @return string
*/
public function ago($syntax = null, $short = false, $parts = 1, $options = null);
/**
* Modify the current instance to the average of a given instance (default now) and the current instance
* (second-precision).
*
* @param \Carbon\Carbon|\DateTimeInterface|null $date
*
* @return static
*/
public function average($date = null);
/**
* Clone the current instance if it's mutable.
*
* This method is convenient to ensure you don't mutate the initial object
* but avoid to make a useless copy of it if it's already immutable.
*
* @return static
*/
public function avoidMutation(): static;
/**
* Determines if the instance is between two others.
*
* The third argument allow you to specify if bounds are included or not (true by default)
* but for when you including/excluding bounds may produce different results in your application,
* we recommend to use the explicit methods ->betweenIncluded() or ->betweenExcluded() instead.
*
* @example
* ```
* Carbon::parse('2018-07-25')->between('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->between('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01', false); // false
* ```
*
* @param bool $equal Indicates if an equal to comparison should be done
*/
public function between(DateTimeInterface|string $date1, DateTimeInterface|string $date2, bool $equal = true): bool;
/**
* Determines if the instance is between two others, bounds excluded.
*
* @example
* ```
* Carbon::parse('2018-07-25')->betweenExcluded('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->betweenExcluded('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->betweenExcluded('2018-07-25', '2018-08-01'); // false
* ```
*/
public function betweenExcluded(DateTimeInterface|string $date1, DateTimeInterface|string $date2): bool;
/**
* Determines if the instance is between two others, bounds included.
*
* @example
* ```
* Carbon::parse('2018-07-25')->betweenIncluded('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->betweenIncluded('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->betweenIncluded('2018-07-25', '2018-08-01'); // true
* ```
*/
public function betweenIncluded(DateTimeInterface|string $date1, DateTimeInterface|string $date2): bool;
/**
* Returns either day of week + time (e.g. "Last Friday at 3:30 PM") if reference time is within 7 days,
* or a calendar date (e.g. "10/29/2017") otherwise.
*
* Language, date and time formats will change according to the current locale.
*
* @param Carbon|\DateTimeInterface|string|null $referenceTime
* @param array $formats
*
* @return string
*/
public function calendar($referenceTime = null, array $formats = []);
/**
* Checks if the (date)time string is in a given format and valid to create a
* new instance.
*
* @example
* ```
* Carbon::canBeCreatedFromFormat('11:12:45', 'h:i:s'); // true
* Carbon::canBeCreatedFromFormat('13:12:45', 'h:i:s'); // false
* ```
*/
public static function canBeCreatedFromFormat(?string $date, string $format): bool;
/**
* Return the Carbon instance passed through, a now instance in the same timezone
* if null given or parse the input if string given.
*
* @param Carbon|\Carbon\CarbonPeriod|\Carbon\CarbonInterval|\DateInterval|\DatePeriod|DateTimeInterface|string|null $date
*
* @return static
*/
public function carbonize($date = null);
/**
* Cast the current instance into the given class.
*
* @template T
*
* @param class-string $className The $className::instance() method will be called to cast the current object.
*
* @return T
*/
public function cast(string $className): mixed;
/**
* Ceil the current instance second with given precision if specified.
*/
public function ceil(DateInterval|string|int|float $precision = 1): static;
/**
* Ceil the current instance at the given unit with given precision if specified.
*/
public function ceilUnit(string $unit, DateInterval|string|int|float $precision = 1): static;
/**
* Ceil the current instance week.
*
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week
*/
public function ceilWeek(WeekDay|int|null $weekStartsAt = null): static;
/**
* Similar to native modify() method of DateTime but can handle more grammars.
*
* @example
* ```
* echo Carbon::now()->change('next 2pm');
* ```
*
* @link https://php.net/manual/en/datetime.modify.php
*
* @param string $modifier
*
* @return static
*/
public function change($modifier);
/**
* Cleanup properties attached to the public scope of DateTime when a dump of the date is requested.
* foreach ($date as $_) {}
* serializer($date)
* var_export($date)
* get_object_vars($date)
*/
public function cleanupDumpProperties();
/**
* @alias copy
*
* Get a copy of the instance.
*
* @return static
*/
public function clone();
/**
* Get the closest date from the instance (second-precision).
*
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
*
* @return static
*/
public function closest($date1, $date2);
/**
* Get a copy of the instance.
*
* @return static
*/
public function copy();
/**
* Create a new Carbon instance from a specific date and time.
*
* If any of $year, $month or $day are set to null their now() values will
* be used.
*
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
*
* If $hour is not null then the default values for $minute and $second
* will be 0.
*
* @param DateTimeInterface|string|int|null $year
* @param int|null $month
* @param int|null $day
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $timezone = null);
/**
* Create a Carbon instance from just a date. The time portion is set to now.
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createFromDate($year = null, $month = null, $day = null, $timezone = null);
/**
* Create a Carbon instance from a specific format.
*
* @param string $format Datetime format
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
#[ReturnTypeWillChange]
public static function createFromFormat($format, $time, $timezone = null);
/**
* Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
*
* @param string $format Datetime format
* @param string $time
* @param DateTimeZone|string|int|null $timezone optional timezone
* @param string|null $locale locale to be used for LTS, LT, LL, LLL, etc. macro-formats (en by fault, unneeded if no such macro-format in use)
* @param TranslatorInterface|null $translator optional custom translator to use for macro-formats
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function createFromIsoFormat(string $format, string $time, $timezone = null, ?string $locale = 'en', ?TranslatorInterface $translator = null);
/**
* Create a Carbon instance from a specific format and a string in a given language.
*
* @param string $format Datetime format
* @param string $locale
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function createFromLocaleFormat(string $format, string $locale, string $time, $timezone = null);
/**
* Create a Carbon instance from a specific ISO format and a string in a given language.
*
* @param string $format Datetime ISO format
* @param string $locale
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function createFromLocaleIsoFormat(string $format, string $locale, string $time, $timezone = null);
/**
* Create a Carbon instance from just a time. The date portion is set to today.
*
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createFromTime($hour = 0, $minute = 0, $second = 0, $timezone = null): static;
/**
* Create a Carbon instance from a time string. The date portion is set to today.
*
* @throws InvalidFormatException
*/
public static function createFromTimeString(string $time, DateTimeZone|string|int|null $timezone = null): static;
/**
* Create a Carbon instance from a timestamp and set the timezone (UTC by default).
*
* Timestamp input can be given as int, float or a string containing one or more numbers.
*/
public static function createFromTimestamp(string|int|float $timestamp, DateTimeZone|string|int|null $timezone = null): static;
/**
* Create a Carbon instance from a timestamp in milliseconds.
*
* Timestamp input can be given as int, float or a string containing one or more numbers.
*/
public static function createFromTimestampMs(string|int|float $timestamp, DateTimeZone|string|int|null $timezone = null): static;
/**
* Create a Carbon instance from a timestamp in milliseconds.
*
* Timestamp input can be given as int, float or a string containing one or more numbers.
*
* @param float|int|string $timestamp
*
* @return static
*/
public static function createFromTimestampMsUTC($timestamp): static;
/**
* Create a Carbon instance from a timestamp keeping the timezone to UTC.
*
* Timestamp input can be given as int, float or a string containing one or more numbers.
*/
public static function createFromTimestampUTC(string|int|float $timestamp): static;
/**
* Create a Carbon instance from just a date. The time portion is set to midnight.
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createMidnightDate($year = null, $month = null, $day = null, $timezone = null);
/**
* Create a new safe Carbon instance from a specific date and time.
*
* If any of $year, $month or $day are set to null their now() values will
* be used.
*
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
*
* If $hour is not null then the default values for $minute and $second
* will be 0.
*
* If one of the set values is not valid, an InvalidDateException
* will be thrown.
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidDateException
*
* @return static|null
*/
public static function createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $timezone = null);
/**
* Create a new Carbon instance from a specific date and time using strict validation.
*
* @see create()
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $timezone = null): static;
/**
* Get/set the day of year.
*
* @template T of int|null
*
* @param int|null $value new value for day of year if using as setter.
*
* @psalm-param T $value
*
* @return static|int
*
* @psalm-return (T is int ? static : int)
*/
public function dayOfYear(?int $value = null): static|int;
/**
* Get the difference as a CarbonInterval instance.
* Return relative interval (negative if $absolute flag is not set to true and the given date is before
* current one).
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return CarbonInterval
*/
public function diffAsCarbonInterval($date = null, bool $absolute = false, array $skip = []): CarbonInterval;
/**
* Get the difference as a DateInterval instance.
* Return relative interval (negative if $absolute flag is not set to true and the given date is before
* current one).
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return DateInterval
*/
public function diffAsDateInterval($date = null, bool $absolute = false): DateInterval;
/**
* Get the difference by the given interval using a filter closure.
*
* @param CarbonInterval $ci An interval to traverse by
* @param Closure $callback
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffFiltered(CarbonInterval $ci, Closure $callback, $date = null, bool $absolute = false): int;
/**
* Get the difference in a human readable format in the current locale from current instance to an other
* instance given (or now if null given).
*
* @example
* ```
* echo Carbon::tomorrow()->diffForHumans() . "\n";
* echo Carbon::tomorrow()->diffForHumans(['parts' => 2]) . "\n";
* echo Carbon::tomorrow()->diffForHumans(['parts' => 3, 'join' => true]) . "\n";
* echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday()) . "\n";
* echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday(), ['short' => true]) . "\n";
* ```
*
* @param Carbon|DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* ⦿ 'syntax' entry (see below)
* ⦿ 'short' entry (see below)
* ⦿ 'parts' entry (see below)
* ⦿ 'options' entry (see below)
* ⦿ 'skip' entry, list of units to skip (array of strings or a single string,
* ` it can be the unit name (singular or plural) or its shortcut
* ` (y, m, w, d, h, min, s, ms, µs).
* ⦿ 'aUnit' entry, prefer "an hour" over "1 hour" if true
* ⦿ 'altNumbers' entry, use alternative numbers if available
* ` (from the current language if true is passed, from the given language(s)
* ` if array or string is passed)
* ⦿ 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* ⦿ 'other' entry (see above)
* ⦿ 'minimumUnit' entry determines the smallest unit of time to display can be long or
* ` short form of the units, e.g. 'hour' or 'h' (default value: s)
* ⦿ 'locale' language in which the diff should be output (has no effect if 'translator' key is set)
* ⦿ 'translator' a custom translator to use to translator the output.
* if int passed, it adds modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*/
public function diffForHumans($other = null, $syntax = null, $short = false, $parts = 1, $options = null): string;
/**
* Get the difference in days.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInDays($date = null, bool $absolute = false, bool $utc = false): float;
/**
* Get the difference in days using a filter closure.
*
* @param Closure $callback
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInDaysFiltered(Closure $callback, $date = null, bool $absolute = false): int;
/**
* Get the difference in hours.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInHours($date = null, bool $absolute = false): float;
/**
* Get the difference in hours using a filter closure.
*
* @param Closure $callback
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInHoursFiltered(Closure $callback, $date = null, bool $absolute = false): int;
/**
* Get the difference in microseconds.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInMicroseconds($date = null, bool $absolute = false): float;
/**
* Get the difference in milliseconds.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInMilliseconds($date = null, bool $absolute = false): float;
/**
* Get the difference in minutes.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInMinutes($date = null, bool $absolute = false): float;
/**
* Get the difference in months.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInMonths($date = null, bool $absolute = false, bool $utc = false): float;
/**
* Get the difference in quarters.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInQuarters($date = null, bool $absolute = false, bool $utc = false): float;
/**
* Get the difference in seconds.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInSeconds($date = null, bool $absolute = false): float;
/**
* @param Unit|string $unit microsecond, millisecond, second, minute,
* hour, day, week, month, quarter, year,
* century, millennium
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInUnit(Unit|string $unit, $date = null, bool $absolute = false, bool $utc = false): float;
/**
* Get the difference in weekdays.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInWeekdays($date = null, bool $absolute = false): int;
/**
* Get the difference in weekend days using a filter.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInWeekendDays($date = null, bool $absolute = false): int;
/**
* Get the difference in weeks.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInWeeks($date = null, bool $absolute = false, bool $utc = false): float;
/**
* Get the difference in years
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInYears($date = null, bool $absolute = false, bool $utc = false): float;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* @see settings
*/
public static function disableHumanDiffOption(int $humanDiffOption): void;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* @see settings
*/
public static function enableHumanDiffOption(int $humanDiffOption): void;
/**
* Modify to end of current given unit.
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOf(Unit::Month)
* ->endOf(Unit::Week, Carbon::FRIDAY);
* ```
*/
public function endOf(Unit|string $unit, mixed ...$params): static;
/**
* Resets the date to end of the century and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfCentury();
* ```
*
* @return static
*/
public function endOfCentury();
/**
* Resets the time to 23:59:59.999999 end of day
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfDay();
* ```
*
* @return static
*/
public function endOfDay();
/**
* Resets the date to end of the decade and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfDecade();
* ```
*
* @return static
*/
public function endOfDecade();
/**
* Modify to end of current hour, minutes and seconds become 59
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfHour();
* ```
*/
public function endOfHour(): static;
/**
* Resets the date to end of the millennium and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfMillennium();
* ```
*
* @return static
*/
public function endOfMillennium();
/**
* Modify to end of current millisecond, microseconds such as 12345 become 123999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->endOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function endOfMillisecond(): static;
/**
* Modify to end of current minute, seconds become 59
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfMinute();
* ```
*/
public function endOfMinute(): static;
/**
* Resets the date to end of the month and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfMonth();
* ```
*
* @return static
*/
public function endOfMonth();
/**
* Resets the date to end of the quarter and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfQuarter();
* ```
*
* @return static
*/
public function endOfQuarter();
/**
* Modify to end of current second, microseconds become 999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->endOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function endOfSecond(): static;
/**
* Resets the date to end of week (defined in $weekEndsAt) and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->endOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek(Carbon::SATURDAY) . "\n";
* ```
*
* @param WeekDay|int|null $weekEndsAt optional end allow you to specify the day of week to use to end the week
*
* @return static
*/
public function endOfWeek(WeekDay|int|null $weekEndsAt = null): static;
/**
* Resets the date to end of the year and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfYear();
* ```
*
* @return static
*/
public function endOfYear();
/**
* Determines if the instance is equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->eq(Carbon::parse('2018-07-25 12:45:16')); // true
* Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:17'); // false
* ```
*
* @see equalTo()
*/
public function eq(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->equalTo(Carbon::parse('2018-07-25 12:45:16')); // true
* Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:17'); // false
* ```
*/
public function equalTo(DateTimeInterface|string $date): bool;
/**
* Set the current locale to the given, execute the passed function, reset the locale to previous one,
* then return the result of the closure (or null if the closure was void).
*
* @param string $locale locale ex. en
* @param callable $func
*
* @return mixed
*/
public static function executeWithLocale(string $locale, callable $func): mixed;
/**
* Get the farthest date from the instance (second-precision).
*
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date1
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date2
*
* @return static
*/
public function farthest($date1, $date2);
/**
* Modify to the first occurrence of a given day of the week
* in the current month. If no dayOfWeek is provided, modify to the
* first day of the current month. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int|null $dayOfWeek
*
* @return static
*/
public function firstOfMonth($dayOfWeek = null);
/**
* Modify to the first occurrence of a given day of the week
* in the current quarter. If no dayOfWeek is provided, modify to the
* first day of the current quarter. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int|null $dayOfWeek day of the week default null
*
* @return static
*/
public function firstOfQuarter($dayOfWeek = null);
/**
* Modify to the first occurrence of a given day of the week
* in the current year. If no dayOfWeek is provided, modify to the
* first day of the current year. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int|null $dayOfWeek day of the week default null
*
* @return static
*/
public function firstOfYear($dayOfWeek = null);
/**
* Round the current instance second with given precision if specified.
*/
public function floor(DateInterval|string|int|float $precision = 1): static;
/**
* Truncate the current instance at the given unit with given precision if specified.
*/
public function floorUnit(string $unit, DateInterval|string|int|float $precision = 1): static;
/**
* Truncate the current instance week.
*
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week
*/
public function floorWeek(WeekDay|int|null $weekStartsAt = null): static;
/**
* @alias diffForHumans
*
* Get the difference in a human readable format in the current locale from current instance to an other
* instance given (or now if null given).
*
* @param Carbon|\DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* - 'other' entry (see above)
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function from($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
/**
* Get the difference in a human readable format in the current locale from current
* instance to now.
*
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function fromNow($syntax = null, $short = false, $parts = 1, $options = null);
/**
* Create an instance from a serialized string.
*
* @param string $value
*
* @throws InvalidFormatException
*
* @return static
*/
public static function fromSerialized($value): static;
/**
* Register a custom macro.
*
* @param callable $macro
* @param int $priority marco with higher priority is tried first
*
* @return void
*/
public static function genericMacro(callable $macro, int $priority = 0): void;
/**
* Get a part of the Carbon object.
*
* @throws UnknownGetterException
*
* @return string|int|bool|DateTimeZone
*/
public function get(Unit|string $name): mixed;
/**
* Returns the alternative number for a given date property if available in the current locale.
*
* @param string $key date property
*/
public function getAltNumber(string $key): string;
/**
* Returns the list of internally available locales and already loaded custom locales.
* (It will ignore custom translator dynamic loading.)
*
* @return array
*/
public static function getAvailableLocales();
/**
* Returns list of Language object for each available locale. This object allow you to get the ISO name, native
* name, region and variant of the locale.
*
* @return Language[]
*/
public static function getAvailableLocalesInfo();
/**
* Returns list of calendar formats for ISO formatting.
*
* @param string|null $locale current locale used if null
*/
public function getCalendarFormats(?string $locale = null): array;
public function getClock(): ?WrapperClock;
/**
* Get the days of the week.
*/
public static function getDays(): array;
/**
* Return the number of days since the start of the week (using the current locale or the first parameter
* if explicitly given).
*
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week,
* if not provided, start of week is inferred from the locale
* (Sunday for en_US, Monday for de_DE, etc.)
*/
public function getDaysFromStartOfWeek(WeekDay|int|null $weekStartsAt = null): int;
/**
* Get the fallback locale.
*
* @see https://symfony.com/doc/current/components/translation.html#fallback-locales
*/
public static function getFallbackLocale(): ?string;
/**
* List of replacements from date() format to isoFormat().
*/
public static function getFormatsToIsoReplacements(): array;
/**
* Return default humanDiff() options (merged flags as integer).
*/
public static function getHumanDiffOptions(): int;
/**
* Returns list of locale formats for ISO formatting.
*
* @param string|null $locale current locale used if null
*/
public function getIsoFormats(?string $locale = null): array;
/**
* Returns list of locale units for ISO formatting.
*/
public static function getIsoUnits(): array;
/**
* {@inheritdoc}
*/
public static function getLastErrors(): array|false;
/**
* Get the raw callable macro registered globally or locally for a given name.
*/
public function getLocalMacro(string $name): ?callable;
/**
* Get the translator of the current instance or the default if none set.
*/
public function getLocalTranslator(): TranslatorInterface;
/**
* Get the current translator locale.
*
* @return string
*/
public static function getLocale(): string;
/**
* Get the raw callable macro registered globally for a given name.
*/
public static function getMacro(string $name): ?callable;
/**
* get midday/noon hour
*
* @return int
*/
public static function getMidDayAt();
/**
* Returns the offset hour and minute formatted with +/- and a given separator (":" by default).
* For example, if the time zone is 9 hours 30 minutes, you'll get "+09:30", with "@@" as first
* argument, "+09@@30", with "" as first argument, "+0930". Negative offset will return something
* like "-12:00".
*
* @param string $separator string to place between hours and minutes (":" by default)
*/
public function getOffsetString(string $separator = ':'): string;
/**
* Returns a unit of the instance padded with 0 by default or any other string if specified.
*
* @param string $unit Carbon unit name
* @param int $length Length of the output (2 by default)
* @param string $padString String to use for padding ("0" by default)
* @param int $padType Side(s) to pad (STR_PAD_LEFT by default)
*/
public function getPaddedUnit($unit, $length = 2, $padString = '0', $padType = 0): string;
/**
* Returns a timestamp rounded with the given precision (6 by default).
*
* @example getPreciseTimestamp() 1532087464437474 (microsecond maximum precision)
* @example getPreciseTimestamp(6) 1532087464437474
* @example getPreciseTimestamp(5) 153208746443747 (1/100000 second precision)
* @example getPreciseTimestamp(4) 15320874644375 (1/10000 second precision)
* @example getPreciseTimestamp(3) 1532087464437 (millisecond precision)
* @example getPreciseTimestamp(2) 153208746444 (1/100 second precision)
* @example getPreciseTimestamp(1) 15320874644 (1/10 second precision)
* @example getPreciseTimestamp(0) 1532087464 (second precision)
* @example getPreciseTimestamp(-1) 153208746 (10 second precision)
* @example getPreciseTimestamp(-2) 15320875 (100 second precision)
*
* @param int $precision
*
* @return float
*/
public function getPreciseTimestamp($precision = 6): float;
/**
* Returns current local settings.
*/
public function getSettings(): array;
/**
* Get the Carbon instance (real or mock) to be returned when a "now"
* instance is created.
*
* @return Closure|self|null the current instance used for testing
*/
public static function getTestNow(): Closure|self|null;
/**
* Return a format from H:i to H:i:s.u according to given unit precision.
*
* @param string $unitPrecision "minute", "second", "millisecond" or "microsecond"
*/
public static function getTimeFormatByPrecision(string $unitPrecision): string;
/**
* Returns the timestamp with millisecond precision.
*
* @return int
*/
public function getTimestampMs(): int;
/**
* Get the translation of the current week day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
* @param string $keySuffix "", "_short" or "_min"
* @param string|null $defaultValue default value if translation missing
*/
public function getTranslatedDayName(?string $context = null, string $keySuffix = '', ?string $defaultValue = null): string;
/**
* Get the translation of the current abbreviated week day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
*/
public function getTranslatedMinDayName(?string $context = null): string;
/**
* Get the translation of the current month day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
* @param string $keySuffix "" or "_short"
* @param string|null $defaultValue default value if translation missing
*/
public function getTranslatedMonthName(?string $context = null, string $keySuffix = '', ?string $defaultValue = null): string;
/**
* Get the translation of the current short week day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
*/
public function getTranslatedShortDayName(?string $context = null): string;
/**
* Get the translation of the current short month day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
*/
public function getTranslatedShortMonthName(?string $context = null): string;
/**
* Returns raw translation message for a given key.
*
* @param string $key key to find
* @param string|null $locale current locale used if null
* @param string|null $default default value if translation returns the key
* @param TranslatorInterface $translator an optional translator to use
*
* @return string
*/
public function getTranslationMessage(string $key, ?string $locale = null, ?string $default = null, $translator = null);
/**
* Returns raw translation message for a given key.
*
* @param TranslatorInterface|null $translator the translator to use
* @param string $key key to find
* @param string|null $locale current locale used if null
* @param string|null $default default value if translation returns the key
*
* @return string|Closure|null
*/
public static function getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null);
/**
* Initialize the default translator instance if necessary.
*/
public static function getTranslator(): TranslatorInterface;
/**
* Get the last day of week.
*
* @param string $locale local to consider the last day of week.
*
* @return int
*/
public static function getWeekEndsAt(?string $locale = null): int;
/**
* Get the first day of week.
*
* @return int
*/
public static function getWeekStartsAt(?string $locale = null): int;
/**
* Get weekend days
*/
public static function getWeekendDays(): array;
/**
* Determines if the instance is greater (after) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:17'); // false
* ```
*/
public function greaterThan(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is greater (after) than or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:17'); // false
* ```
*/
public function greaterThanOrEqualTo(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is greater (after) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:17'); // false
* ```
*
* @see greaterThan()
*/
public function gt(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is greater (after) than or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:17'); // false
* ```
*
* @see greaterThanOrEqualTo()
*/
public function gte(DateTimeInterface|string $date): bool;
/**
* Checks if the (date)time string is in a given format.
*
* @example
* ```
* Carbon::hasFormat('11:12:45', 'h:i:s'); // true
* Carbon::hasFormat('13:12:45', 'h:i:s'); // false
* ```
*/
public static function hasFormat(string $date, string $format): bool;
/**
* Checks if the (date)time string is in a given format.
*
* @example
* ```
* Carbon::hasFormatWithModifiers('31/08/2015', 'd#m#Y'); // true
* Carbon::hasFormatWithModifiers('31/08/2015', 'm#d#Y'); // false
* ```
*
* @param string $date
* @param string $format
*
* @return bool
*/
public static function hasFormatWithModifiers(?string $date, string $format): bool;
/**
* Checks if macro is registered globally or locally.
*/
public function hasLocalMacro(string $name): bool;
/**
* Return true if the current instance has its own translator.
*/
public function hasLocalTranslator(): bool;
/**
* Checks if macro is registered globally.
*
* @param string $name
*
* @return bool
*/
public static function hasMacro(string $name): bool;
/**
* Determine if a time string will produce a relative date.
*
* @return bool true if time match a relative date, false if absolute or invalid time string
*/
public static function hasRelativeKeywords(?string $time): bool;
/**
* Determine if there is a valid test instance set. A valid test instance
* is anything that is not null.
*
* @return bool true if there is a test instance, otherwise false
*/
public static function hasTestNow(): bool;
/**
* Create a Carbon instance from a DateTime one.
*/
public static function instance(DateTimeInterface $date): static;
/**
* Returns true if the current date matches the given string.
*
* @example
* ```
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2018')); // false
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('06-02')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06-02')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('Sunday')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('June')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:45')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:00')); // false
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12h')); // true
* var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3pm')); // true
* var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3am')); // false
* ```
*
* @param string $tester day name, month name, hour, date, etc. as string
*/
public function is(WeekDay|Month|string $tester): bool;
/**
* Determines if the instance is greater (after) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:17'); // false
* ```
*
* @see greaterThan()
*/
public function isAfter(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is less (before) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:17'); // true
* ```
*
* @see lessThan()
*/
public function isBefore(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is between two others
*
* @example
* ```
* Carbon::parse('2018-07-25')->isBetween('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->isBetween('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01', false); // false
* ```
*
* @param bool $equal Indicates if an equal to comparison should be done
*/
public function isBetween(DateTimeInterface|string $date1, DateTimeInterface|string $date2, bool $equal = true): bool;
/**
* Check if its the birthday. Compares the date/month values of the two dates.
*
* @example
* ```
* Carbon::now()->subYears(5)->isBirthday(); // true
* Carbon::now()->subYears(5)->subDay()->isBirthday(); // false
* Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-05')); // true
* Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-06')); // false
* ```
*
* @param DateTimeInterface|string|null $date The instance to compare with or null to use current day.
*
* @return bool
*/
public function isBirthday(DateTimeInterface|string|null $date = null): bool;
/**
* Determines if the instance is in the current unit given.
*
* @example
* ```
* Carbon::now()->isCurrentUnit('hour'); // true
* Carbon::now()->subHours(2)->isCurrentUnit('hour'); // false
* ```
*
* @param string $unit The unit to test.
*
* @throws BadMethodCallException
*/
public function isCurrentUnit(string $unit): bool;
/**
* Checks if this day is a specific day of the week.
*
* @example
* ```
* Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::WEDNESDAY); // true
* Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::FRIDAY); // false
* Carbon::parse('2019-07-17')->isDayOfWeek('Wednesday'); // true
* Carbon::parse('2019-07-17')->isDayOfWeek('Friday'); // false
* ```
*
* @param int|string $dayOfWeek
*
* @return bool
*/
public function isDayOfWeek($dayOfWeek): bool;
/**
* Determines if the instance is end of century (last day by default but interval can be customized).
*/
public function isEndOfCentury(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Check if the instance is end of day.
*
* @example
* ```
* Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(); // true
* Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(); // true
* Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(); // true
* Carbon::parse('2019-02-28 23:59:58.999999')->isEndOfDay(); // false
* Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(true); // true
* Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(true); // false
* Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(true); // false
* ```
*
* @param bool $checkMicroseconds check time at microseconds precision
* @param Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval if an interval is specified it will be used as precision
* for instance with "15 minutes", it checks if current date-time
* is in the last 15 minutes of the day, with Unit::Hour, it
* checks if it's in the last hour of the day.
*/
public function isEndOfDay(Unit|DateInterval|Closure|CarbonConverterInterface|string|bool $checkMicroseconds = false, Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of decade (last day by default but interval can be customized).
*/
public function isEndOfDecade(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of hour (last microsecond by default but interval can be customized).
*/
public function isEndOfHour(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of millennium (last day by default but interval can be customized).
*/
public function isEndOfMillennium(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of millisecond (last microsecond by default but interval can be customized).
*/
public function isEndOfMillisecond(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of minute (last microsecond by default but interval can be customized).
*/
public function isEndOfMinute(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of month (last day by default but interval can be customized).
*/
public function isEndOfMonth(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of quarter (last day by default but interval can be customized).
*/
public function isEndOfQuarter(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is end of second (last microsecond by default but interval can be customized).
*/
public function isEndOfSecond(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Returns true if the date was created using CarbonImmutable::endOfTime()
*
* @return bool
*/
public function isEndOfTime(): bool;
/**
* Check if the instance is end of a given unit (tolerating a given interval).
*
* @example
* ```
* // Check if a date-time is the last 15 minutes of the hour it's in
* Carbon::parse('2019-02-28 20:13:00')->isEndOfUnit(Unit::Hour, '15 minutes'); // false
* ```
*/
public function isEndOfUnit(Unit $unit, Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null, mixed ...$params): bool;
/**
* Determines if the instance is end of week (last day by default but interval can be customized).
*
* @example
* ```
* Carbon::parse('2024-08-31')->endOfWeek()->isEndOfWeek(); // true
* Carbon::parse('2024-08-31')->isEndOfWeek(); // false
* ```
*/
public function isEndOfWeek(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null, WeekDay|int|null $weekEndsAt = null): bool;
/**
* Determines if the instance is end of year (last day by default but interval can be customized).
*/
public function isEndOfYear(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is in the future, ie. greater (after) than now.
*
* @example
* ```
* Carbon::now()->addHours(5)->isFuture(); // true
* Carbon::now()->subHours(5)->isFuture(); // false
* ```
*/
public function isFuture(): bool;
/**
* Returns true if the current class/instance is immutable.
*/
public static function isImmutable(): bool;
/**
* Check if today is the last day of the Month
*
* @example
* ```
* Carbon::parse('2019-02-28')->isLastOfMonth(); // true
* Carbon::parse('2019-03-28')->isLastOfMonth(); // false
* Carbon::parse('2019-03-30')->isLastOfMonth(); // false
* Carbon::parse('2019-03-31')->isLastOfMonth(); // true
* Carbon::parse('2019-04-30')->isLastOfMonth(); // true
* ```
*/
public function isLastOfMonth(): bool;
/**
* Determines if the instance is a leap year.
*
* @example
* ```
* Carbon::parse('2020-01-01')->isLeapYear(); // true
* Carbon::parse('2019-01-01')->isLeapYear(); // false
* ```
*/
public function isLeapYear(): bool;
/**
* Determines if the instance is a long year (using ISO 8601 year).
*
* @example
* ```
* Carbon::parse('2015-01-01')->isLongIsoYear(); // true
* Carbon::parse('2016-01-01')->isLongIsoYear(); // true
* Carbon::parse('2016-01-03')->isLongIsoYear(); // false
* Carbon::parse('2019-12-29')->isLongIsoYear(); // false
* Carbon::parse('2019-12-30')->isLongIsoYear(); // true
* ```
*
* @see https://en.wikipedia.org/wiki/ISO_8601#Week_dates
*/
public function isLongIsoYear(): bool;
/**
* Determines if the instance is a long year (using calendar year).
*
* ⚠️ This method completely ignores month and day to use the numeric year number,
* it's not correct if the exact date matters. For instance as `2019-12-30` is already
* in the first week of the 2020 year, if you want to know from this date if ISO week
* year 2020 is a long year, use `isLongIsoYear` instead.
*
* @example
* ```
* Carbon::create(2015)->isLongYear(); // true
* Carbon::create(2016)->isLongYear(); // false
* ```
*
* @see https://en.wikipedia.org/wiki/ISO_8601#Week_dates
*/
public function isLongYear(): bool;
/**
* Check if the instance is midday.
*
* @example
* ```
* Carbon::parse('2019-02-28 11:59:59.999999')->isMidday(); // false
* Carbon::parse('2019-02-28 12:00:00')->isMidday(); // true
* Carbon::parse('2019-02-28 12:00:00.999999')->isMidday(); // true
* Carbon::parse('2019-02-28 12:00:01')->isMidday(); // false
* ```
*/
public function isMidday(): bool;
/**
* Check if the instance is start of day / midnight.
*
* @example
* ```
* Carbon::parse('2019-02-28 00:00:00')->isMidnight(); // true
* Carbon::parse('2019-02-28 00:00:00.999999')->isMidnight(); // true
* Carbon::parse('2019-02-28 00:00:01')->isMidnight(); // false
* ```
*/
public function isMidnight(): bool;
/**
* Returns true if a property can be changed via setter.
*
* @param string $unit
*
* @return bool
*/
public static function isModifiableUnit($unit): bool;
/**
* Returns true if the current class/instance is mutable.
*/
public static function isMutable(): bool;
/**
* Determines if the instance is in the past, ie. less (before) than now.
*
* @example
* ```
* Carbon::now()->subHours(5)->isPast(); // true
* Carbon::now()->addHours(5)->isPast(); // false
* ```
*/
public function isPast(): bool;
/**
* Compares the formatted values of the two dates.
*
* @example
* ```
* Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-12-13')); // true
* Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-06-14')); // false
* ```
*
* @param string $format date formats to compare.
* @param DateTimeInterface|string $date instance to compare with or null to use current day.
*/
public function isSameAs(string $format, DateTimeInterface|string $date): bool;
/**
* Checks if the passed in date is in the same month as the instance´s month.
*
* @example
* ```
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-01-01')); // true
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-02-01')); // false
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01')); // false
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01'), false); // true
* ```
*
* @param DateTimeInterface|string $date The instance to compare with or null to use the current date.
* @param bool $ofSameYear Check if it is the same month in the same year.
*
* @return bool
*/
public function isSameMonth(DateTimeInterface|string $date, bool $ofSameYear = true): bool;
/**
* Checks if the passed in date is in the same quarter as the instance quarter (and year if needed).
*
* @example
* ```
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-03-01')); // true
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-04-01')); // false
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01')); // false
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01'), false); // true
* ```
*
* @param DateTimeInterface|string $date The instance to compare with or null to use current day.
* @param bool $ofSameYear Check if it is the same month in the same year.
*
* @return bool
*/
public function isSameQuarter(DateTimeInterface|string $date, bool $ofSameYear = true): bool;
/**
* Determines if the instance is in the current unit given.
*
* @example
* ```
* Carbon::parse('2019-01-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // true
* Carbon::parse('2018-12-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // false
* ```
*
* @param string $unit singular unit string
* @param DateTimeInterface|string $date instance to compare with or null to use current day.
*
* @throws BadComparisonUnitException
*
* @return bool
*/
public function isSameUnit(string $unit, DateTimeInterface|string $date): bool;
/**
* Determines if the instance is start of century (first day by default but interval can be customized).
*/
public function isStartOfCentury(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Check if the instance is start of day / midnight.
*
* @example
* ```
* Carbon::parse('2019-02-28 00:00:00')->isStartOfDay(); // true
* Carbon::parse('2019-02-28 00:00:00.999999')->isStartOfDay(); // true
* Carbon::parse('2019-02-28 00:00:01')->isStartOfDay(); // false
* Carbon::parse('2019-02-28 00:00:00.000000')->isStartOfDay(true); // true
* Carbon::parse('2019-02-28 00:00:00.000012')->isStartOfDay(true); // false
* ```
*
* @param bool $checkMicroseconds check time at microseconds precision
* @param Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval if an interval is specified it will be used as precision
* for instance with "15 minutes", it checks if current date-time
* is in the last 15 minutes of the day, with Unit::Hour, it
* checks if it's in the last hour of the day.
*/
public function isStartOfDay(Unit|DateInterval|Closure|CarbonConverterInterface|string|bool $checkMicroseconds = false, Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of decade (first day by default but interval can be customized).
*/
public function isStartOfDecade(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of hour (first microsecond by default but interval can be customized).
*/
public function isStartOfHour(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of millennium (first day by default but interval can be customized).
*/
public function isStartOfMillennium(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of millisecond (first microsecond by default but interval can be customized).
*/
public function isStartOfMillisecond(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of minute (first microsecond by default but interval can be customized).
*/
public function isStartOfMinute(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of month (first day by default but interval can be customized).
*/
public function isStartOfMonth(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of quarter (first day by default but interval can be customized).
*/
public function isStartOfQuarter(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Determines if the instance is start of second (first microsecond by default but interval can be customized).
*/
public function isStartOfSecond(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Returns true if the date was created using CarbonImmutable::startOfTime()
*
* @return bool
*/
public function isStartOfTime(): bool;
/**
* Check if the instance is start of a given unit (tolerating a given interval).
*
* @example
* ```
* // Check if a date-time is the first 15 minutes of the hour it's in
* Carbon::parse('2019-02-28 20:13:00')->isStartOfUnit(Unit::Hour, '15 minutes'); // true
* ```
*/
public function isStartOfUnit(Unit $unit, Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null, mixed ...$params): bool;
/**
* Determines if the instance is start of week (first day by default but interval can be customized).
*
* @example
* ```
* Carbon::parse('2024-08-31')->startOfWeek()->isStartOfWeek(); // true
* Carbon::parse('2024-08-31')->isStartOfWeek(); // false
* ```
*/
public function isStartOfWeek(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null, WeekDay|int|null $weekStartsAt = null): bool;
/**
* Determines if the instance is start of year (first day by default but interval can be customized).
*/
public function isStartOfYear(Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null): bool;
/**
* Returns true if the strict mode is globally in use, false else.
* (It can be overridden in specific instances.)
*
* @return bool
*/
public static function isStrictModeEnabled(): bool;
/**
* Determines if the instance is today.
*
* @example
* ```
* Carbon::today()->isToday(); // true
* Carbon::tomorrow()->isToday(); // false
* ```
*/
public function isToday(): bool;
/**
* Determines if the instance is tomorrow.
*
* @example
* ```
* Carbon::tomorrow()->isTomorrow(); // true
* Carbon::yesterday()->isTomorrow(); // false
* ```
*/
public function isTomorrow(): bool;
/**
* Determines if the instance is a weekday.
*
* @example
* ```
* Carbon::parse('2019-07-14')->isWeekday(); // false
* Carbon::parse('2019-07-15')->isWeekday(); // true
* ```
*/
public function isWeekday(): bool;
/**
* Determines if the instance is a weekend day.
*
* @example
* ```
* Carbon::parse('2019-07-14')->isWeekend(); // true
* Carbon::parse('2019-07-15')->isWeekend(); // false
* ```
*/
public function isWeekend(): bool;
/**
* Determines if the instance is yesterday.
*
* @example
* ```
* Carbon::yesterday()->isYesterday(); // true
* Carbon::tomorrow()->isYesterday(); // false
* ```
*/
public function isYesterday(): bool;
/**
* Format in the current language using ISO replacement patterns.
*
* @param string|null $originalFormat provide context if a chunk has been passed alone
*/
public function isoFormat(string $format, ?string $originalFormat = null): string;
/**
* Get/set the week number using given first day of week and first
* day of year included in the first week. Or use ISO format if no settings
* given.
*
* @param int|null $week
* @param int|null $dayOfWeek
* @param int|null $dayOfYear
*
* @return int|static
*/
public function isoWeek($week = null, $dayOfWeek = null, $dayOfYear = null);
/**
* Set/get the week number of year using given first day of week and first
* day of year included in the first week. Or use ISO format if no settings
* given.
*
* @param int|null $year if null, act as a getter, if not null, set the year and return current instance.
* @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
* @param int|null $dayOfYear first day of year included in the week #1
*
* @return int|static
*/
public function isoWeekYear($year = null, $dayOfWeek = null, $dayOfYear = null);
/**
* Get/set the ISO weekday from 1 (Monday) to 7 (Sunday).
*
* @param WeekDay|int|null $value new value for weekday if using as setter.
*/
public function isoWeekday(WeekDay|int|null $value = null): static|int;
/**
* Get the number of weeks of the current week-year using given first day of week and first
* day of year included in the first week. Or use ISO format if no settings
* given.
*
* @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
* @param int|null $dayOfYear first day of year included in the week #1
*
* @return int
*/
public function isoWeeksInYear($dayOfWeek = null, $dayOfYear = null);
/**
* Prepare the object for JSON serialization.
*/
public function jsonSerialize(): mixed;
/**
* Modify to the last occurrence of a given day of the week
* in the current month. If no dayOfWeek is provided, modify to the
* last day of the current month. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int|null $dayOfWeek
*
* @return static
*/
public function lastOfMonth($dayOfWeek = null);
/**
* Modify to the last occurrence of a given day of the week
* in the current quarter. If no dayOfWeek is provided, modify to the
* last day of the current quarter. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int|null $dayOfWeek day of the week default null
*
* @return static
*/
public function lastOfQuarter($dayOfWeek = null);
/**
* Modify to the last occurrence of a given day of the week
* in the current year. If no dayOfWeek is provided, modify to the
* last day of the current year. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int|null $dayOfWeek day of the week default null
*
* @return static
*/
public function lastOfYear($dayOfWeek = null);
/**
* Determines if the instance is less (before) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:17'); // true
* ```
*/
public function lessThan(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is less (before) or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:17'); // true
* ```
*/
public function lessThanOrEqualTo(DateTimeInterface|string $date): bool;
/**
* Get/set the locale for the current instance.
*
* @param string|null $locale
* @param string ...$fallbackLocales
*
* @return $this|string
*/
public function locale(?string $locale = null, string ...$fallbackLocales): static|string;
/**
* Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
* Support is considered enabled if the 3 words are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasDiffOneDayWords(string $locale): bool;
/**
* Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
* Support is considered enabled if the 4 sentences are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasDiffSyntax(string $locale): bool;
/**
* Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
* Support is considered enabled if the 2 words are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasDiffTwoDayWords(string $locale): bool;
/**
* Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
* Support is considered enabled if the 4 sentences are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasPeriodSyntax($locale);
/**
* Returns true if the given locale is internally supported and has short-units support.
* Support is considered enabled if either year, day or hour has a short variant translated.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasShortUnits(string $locale): bool;
/**
* Determines if the instance is less (before) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:17'); // true
* ```
*
* @see lessThan()
*/
public function lt(DateTimeInterface|string $date): bool;
/**
* Determines if the instance is less (before) or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:17'); // true
* ```
*
* @see lessThanOrEqualTo()
*/
public function lte(DateTimeInterface|string $date): bool;
/**
* Register a custom macro.
*
* Pass null macro to remove it.
*
* @example
* ```
* $userSettings = [
* 'locale' => 'pt',
* 'timezone' => 'America/Sao_Paulo',
* ];
* Carbon::macro('userFormat', function () use ($userSettings) {
* return $this->copy()->locale($userSettings['locale'])->tz($userSettings['timezone'])->calendar();
* });
* echo Carbon::yesterday()->hours(11)->userFormat();
* ```
*/
public static function macro(string $name, ?callable $macro): void;
/**
* Make a Carbon instance from given variable if possible.
*
* Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
* and recurrences). Throw an exception for invalid format, but otherwise return null.
*
* @param mixed $var
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function make($var, DateTimeZone|string|null $timezone = null);
/**
* Get the maximum instance between a given instance (default now) and the current instance.
*
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date
*
* @return static
*/
public function max($date = null);
/**
* Get the maximum instance between a given instance (default now) and the current instance.
*
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date
*
* @see max()
*
* @return static
*/
public function maximum($date = null);
/**
* Return the meridiem of the current time in the current locale.
*
* @param bool $isLower if true, returns lowercase variant if available in the current locale.
*/
public function meridiem(bool $isLower = false): string;
/**
* Modify to midday, default to self::$midDayAt
*
* @return static
*/
public function midDay();
/**
* Get the minimum instance between a given instance (default now) and the current instance.
*
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date
*
* @return static
*/
public function min($date = null);
/**
* Get the minimum instance between a given instance (default now) and the current instance.
*
* @param \Carbon\Carbon|\DateTimeInterface|mixed $date
*
* @see min()
*
* @return static
*/
public function minimum($date = null);
/**
* Mix another object into the class.
*
* @example
* ```
* Carbon::mixin(new class {
* public function addMoon() {
* return function () {
* return $this->addDays(30);
* };
* }
* public function subMoon() {
* return function () {
* return $this->subDays(30);
* };
* }
* });
* $fullMoon = Carbon::create('2018-12-22');
* $nextFullMoon = $fullMoon->addMoon();
* $blackMoon = Carbon::create('2019-01-06');
* $previousBlackMoon = $blackMoon->subMoon();
* echo "$nextFullMoon\n";
* echo "$previousBlackMoon\n";
* ```
*
* @throws ReflectionException
*/
public static function mixin(object|string $mixin): void;
/**
* Calls \DateTime::modify if mutable or \DateTimeImmutable::modify else.
*
* @see https://php.net/manual/en/datetime.modify.php
*
* @return static
*/
#[ReturnTypeWillChange]
public function modify($modify);
/**
* Determines if the instance is not equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->ne(Carbon::parse('2018-07-25 12:45:16')); // false
* Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:17'); // true
* ```
*
* @see notEqualTo()
*/
public function ne(DateTimeInterface|string $date): bool;
/**
* Modify to the next occurrence of a given modifier such as a day of
* the week. If no modifier is provided, modify to the next occurrence
* of the current day of the week. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param string|int|null $modifier
*
* @return static
*/
public function next($modifier = null);
/**
* Go forward to the next weekday.
*
* @return static
*/
public function nextWeekday();
/**
* Go forward to the next weekend day.
*
* @return static
*/
public function nextWeekendDay();
/**
* Determines if the instance is not equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->notEqualTo(Carbon::parse('2018-07-25 12:45:16')); // false
* Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:17'); // true
* ```
*/
public function notEqualTo(DateTimeInterface|string $date): bool;
/**
* Get a Carbon instance for the current date and time.
*/
public static function now(DateTimeZone|string|int|null $timezone = null): static;
/**
* Returns a present instance in the same timezone.
*
* @return static
*/
public function nowWithSameTz(): static;
/**
* Modify to the given occurrence of a given day of the week
* in the current month. If the calculated occurrence is outside the scope
* of the current month, then return false and no modifications are made.
* Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int $nth
* @param int $dayOfWeek
*
* @return mixed
*/
public function nthOfMonth($nth, $dayOfWeek);
/**
* Modify to the given occurrence of a given day of the week
* in the current quarter. If the calculated occurrence is outside the scope
* of the current quarter, then return false and no modifications are made.
* Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int $nth
* @param int $dayOfWeek
*
* @return mixed
*/
public function nthOfQuarter($nth, $dayOfWeek);
/**
* Modify to the given occurrence of a given day of the week
* in the current year. If the calculated occurrence is outside the scope
* of the current year, then return false and no modifications are made.
* Use the supplied constants to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param int $nth
* @param int $dayOfWeek
*
* @return mixed
*/
public function nthOfYear($nth, $dayOfWeek);
/**
* Return a property with its ordinal.
*/
public function ordinal(string $key, ?string $period = null): string;
/**
* Create a carbon instance from a string.
*
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
*
* @throws InvalidFormatException
*/
public static function parse(DateTimeInterface|WeekDay|Month|string|int|float|null $time, DateTimeZone|string|int|null $timezone = null): static;
/**
* Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
*
* @param string $time date/time string in the given language (may also contain English).
* @param string|null $locale if locale is null or not specified, current global locale will be
* used instead.
* @param DateTimeZone|string|int|null $timezone optional timezone for the new instance.
*
* @throws InvalidFormatException
*/
public static function parseFromLocale(string $time, ?string $locale = null, DateTimeZone|string|int|null $timezone = null): static;
/**
* Returns standardized plural of a given singular/plural unit name (in English).
*/
public static function pluralUnit(string $unit): string;
/**
* Modify to the previous occurrence of a given modifier such as a day of
* the week. If no dayOfWeek is provided, modify to the previous occurrence
* of the current day of the week. Use the supplied constants
* to indicate the desired dayOfWeek, ex. static::MONDAY.
*
* @param string|int|null $modifier
*
* @return static
*/
public function previous($modifier = null);
/**
* Go backward to the previous weekday.
*
* @return static
*/
public function previousWeekday();
/**
* Go backward to the previous weekend day.
*
* @return static
*/
public function previousWeekendDay();
/**
* Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
*
* @param \DateTimeInterface|Carbon|CarbonImmutable|null $end period end date
* @param int|\DateInterval|string|null $interval period default interval or number of the given $unit
* @param string|null $unit if specified, $interval must be an integer
*/
public function range($end = null, $interval = null, $unit = null): CarbonPeriod;
/**
* Call native PHP DateTime/DateTimeImmutable add() method.
*
* @param DateInterval $interval
*
* @return static
*/
public function rawAdd(DateInterval $interval): static;
/**
* Create a Carbon instance from a specific format.
*
* @param string $format Datetime format
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function rawCreateFromFormat(string $format, string $time, $timezone = null);
/**
* @see https://php.net/manual/en/datetime.format.php
*/
public function rawFormat(string $format): string;
/**
* Create a carbon instance from a string.
*
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
*
* @throws InvalidFormatException
*/
public static function rawParse(DateTimeInterface|WeekDay|Month|string|int|float|null $time, DateTimeZone|string|int|null $timezone = null): static;
/**
* Call native PHP DateTime/DateTimeImmutable sub() method.
*/
public function rawSub(DateInterval $interval): static;
/**
* Remove all macros and generic macros.
*/
public static function resetMacros(): void;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
* are available for quarters, years, decade, centuries, millennia (singular and plural forms).
* @see settings
*
* Reset the month overflow behavior.
*
* @return void
*/
public static function resetMonthsOverflow(): void;
/**
* Reset the format used to the default when type juggling a Carbon instance to a string
*
* @return void
*/
public static function resetToStringFormat(): void;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
* are available for quarters, years, decade, centuries, millennia (singular and plural forms).
* @see settings
*
* Reset the month overflow behavior.
*
* @return void
*/
public static function resetYearsOverflow(): void;
/**
* Round the current instance second with given precision if specified.
*/
public function round(DateInterval|string|int|float $precision = 1, callable|string $function = 'round'): static;
/**
* Round the current instance at the given unit with given precision if specified and the given function.
*/
public function roundUnit(string $unit, DateInterval|string|int|float $precision = 1, callable|string $function = 'round'): static;
/**
* Round the current instance week.
*
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week
*/
public function roundWeek(WeekDay|int|null $weekStartsAt = null): static;
/**
* The number of seconds since midnight.
*
* @return float
*/
public function secondsSinceMidnight(): float;
/**
* The number of seconds until 23:59:59.
*
* @return float
*/
public function secondsUntilEndOfDay(): float;
/**
* Return a serialized string of the instance.
*/
public function serialize(): string;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather transform Carbon object before the serialization.
*
* JSON serialize all Carbon instances using the given callback.
*/
public static function serializeUsing(callable|string|null $format): void;
/**
* Set a part of the Carbon object.
*
* @throws ImmutableException|UnknownSetterException
*
* @return $this
*/
public function set(Unit|array|string $name, DateTimeZone|Month|string|int|float|null $value = null): static;
/**
* Set the date with gregorian year, month and day numbers.
*
* @see https://php.net/manual/en/datetime.setdate.php
*/
public function setDate(int $year, int $month, int $day): static;
/**
* Set the year, month, and date for this instance to that of the passed instance.
*/
public function setDateFrom(DateTimeInterface|string $date): static;
/**
* Set the date and time all together.
*/
public function setDateTime(int $year, int $month, int $day, int $hour, int $minute, int $second = 0, int $microseconds = 0): static;
/**
* Set the date and time for this instance to that of the passed instance.
*/
public function setDateTimeFrom(DateTimeInterface|string $date): static;
/**
* Set the day (keeping the current time) to the start of the week + the number of days passed as the first
* parameter. First day of week is driven by the locale unless explicitly set with the second parameter.
*
* @param int $numberOfDays number of days to add after the start of the current week
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week,
* if not provided, start of week is inferred from the locale
* (Sunday for en_US, Monday for de_DE, etc.)
*/
public function setDaysFromStartOfWeek(int $numberOfDays, WeekDay|int|null $weekStartsAt = null): static;
/**
* Set the fallback locale.
*
* @see https://symfony.com/doc/current/components/translation.html#fallback-locales
*
* @param string $locale
*/
public static function setFallbackLocale(string $locale): void;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* @see settings
*/
public static function setHumanDiffOptions(int $humanDiffOptions): void;
/**
* Set a date according to the ISO 8601 standard - using weeks and day offsets rather than specific dates.
*
* @see https://php.net/manual/en/datetime.setisodate.php
*/
public function setISODate(int $year, int $week, int $day = 1): static;
/**
* Set the translator for the current instance.
*/
public function setLocalTranslator(TranslatorInterface $translator);
/**
* Set the current translator locale and indicate if the source locale file exists.
* Pass 'auto' as locale to use the closest language to the current LC_TIME locale.
*
* @param string $locale locale ex. en
*/
public static function setLocale(string $locale): void;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather consider mid-day is always 12pm, then if you need to test if it's an other
* hour, test it explicitly:
* $date->format('G') == 13
* or to set explicitly to a given hour:
* $date->setTime(13, 0, 0, 0)
*
* Set midday/noon hour
*
* @param int $hour midday hour
*
* @return void
*/
public static function setMidDayAt($hour);
/**
* Set a Carbon instance (real or mock) to be returned when a "now"
* instance is created. The provided instance will be returned
* specifically under the following conditions:
* - A call to the static now() method, ex. Carbon::now()
* - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
* - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
* - When a string containing the desired time is passed to Carbon::parse().
*
* Note the timezone parameter was left out of the examples above and
* has no affect as the mock value will be returned regardless of its value.
*
* Only the moment is mocked with setTestNow(), the timezone will still be the one passed
* as parameter of date_default_timezone_get() as a fallback (see setTestNowAndTimezone()).
*
* To clear the test instance call this method using the default
* parameter of null.
*
* /!\ Use this method for unit tests only.
*
* @param DateTimeInterface|Closure|static|string|false|null $testNow real or mock Carbon instance
*/
public static function setTestNow(mixed $testNow = null): void;
/**
* Set a Carbon instance (real or mock) to be returned when a "now"
* instance is created. The provided instance will be returned
* specifically under the following conditions:
* - A call to the static now() method, ex. Carbon::now()
* - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
* - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
* - When a string containing the desired time is passed to Carbon::parse().
*
* It will also align default timezone (e.g. call date_default_timezone_set()) with
* the second argument or if null, with the timezone of the given date object.
*
* To clear the test instance call this method using the default
* parameter of null.
*
* /!\ Use this method for unit tests only.
*
* @param DateTimeInterface|Closure|static|string|false|null $testNow real or mock Carbon instance
*/
public static function setTestNowAndTimezone($testNow = null, $timezone = null): void;
/**
* Resets the current time of the DateTime object to a different time.
*
* @see https://php.net/manual/en/datetime.settime.php
*/
public function setTime(int $hour, int $minute, int $second = 0, int $microseconds = 0): static;
/**
* Set the hour, minute, second and microseconds for this instance to that of the passed instance.
*/
public function setTimeFrom(DateTimeInterface|string $date): static;
/**
* Set the time by time string.
*/
public function setTimeFromTimeString(string $time): static;
/**
* Set the instance's timestamp.
*
* Timestamp input can be given as int, float or a string containing one or more numbers.
*/
public function setTimestamp(string|int|float $timestamp): static;
/**
* Set the instance's timezone from a string or object.
*/
public function setTimezone(DateTimeZone|string|int $timeZone): static;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather let Carbon object being cast to string with DEFAULT_TO_STRING_FORMAT, and
* use other method or custom format passed to format() method if you need to dump another string
* format.
*
* Set the default format used when type juggling a Carbon instance to a string.
*
* @param string|Closure|null $format
*
* @return void
*/
public static function setToStringFormat(Closure|string|null $format): void;
/**
* Set the default translator instance to use.
*
* @param TranslatorInterface $translator
*
* @return void
*/
public static function setTranslator(TranslatorInterface $translator): void;
/**
* Set specified unit to new given value.
*
* @param string $unit year, month, day, hour, minute, second or microsecond
* @param Month|int $value new value for given unit
*/
public function setUnit(string $unit, Month|int|float|null $value = null): static;
/**
* Set any unit to a new value without overflowing current other unit given.
*
* @param string $valueUnit unit name to modify
* @param int $value new value for the input unit
* @param string $overflowUnit unit name to not overflow
*/
public function setUnitNoOverflow(string $valueUnit, int $value, string $overflowUnit): static;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather consider week-end is always saturday and sunday, and if you have some custom
* week-end days to handle, give to those days an other name and create a macro for them:
*
* ```
* Carbon::macro('isDayOff', function ($date) {
* return $date->isSunday() || $date->isMonday();
* });
* Carbon::macro('isNotDayOff', function ($date) {
* return !$date->isDayOff();
* });
* if ($someDate->isDayOff()) ...
* if ($someDate->isNotDayOff()) ...
* // Add 5 not-off days
* $count = 5;
* while ($someDate->isDayOff() || ($count-- > 0)) {
* $someDate->addDay();
* }
* ```
*
* Set weekend days
*/
public static function setWeekendDays(array $days): void;
/**
* Set specific options.
* - strictMode: true|false|null
* - monthOverflow: true|false|null
* - yearOverflow: true|false|null
* - humanDiffOptions: int|null
* - toStringFormat: string|Closure|null
* - toJsonFormat: string|Closure|null
* - locale: string|null
* - timezone: \DateTimeZone|string|int|null
* - macros: array|null
* - genericMacros: array|null
*
* @param array $settings
*
* @return $this|static
*/
public function settings(array $settings): static;
/**
* Set the instance's timezone from a string or object and add/subtract the offset difference.
*/
public function shiftTimezone(DateTimeZone|string $value): static;
/**
* Get the month overflow global behavior (can be overridden in specific instances).
*
* @return bool
*/
public static function shouldOverflowMonths(): bool;
/**
* Get the month overflow global behavior (can be overridden in specific instances).
*
* @return bool
*/
public static function shouldOverflowYears(): bool;
/**
* @alias diffForHumans
*
* Get the difference in a human readable format in the current locale from current instance to an other
* instance given (or now if null given).
*/
public function since($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
/**
* Returns standardized singular of a given singular/plural unit name (in English).
*/
public static function singularUnit(string $unit): string;
public static function sleep(int|float $seconds): void;
/**
* Modify to start of current given unit.
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOf(Unit::Month)
* ->endOf(Unit::Week, Carbon::FRIDAY);
* ```
*/
public function startOf(Unit|string $unit, mixed ...$params): static;
/**
* Resets the date to the first day of the century and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfCentury();
* ```
*
* @return static
*/
public function startOfCentury();
/**
* Resets the time to 00:00:00 start of day
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfDay();
* ```
*
* @return static
*/
public function startOfDay();
/**
* Resets the date to the first day of the decade and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfDecade();
* ```
*
* @return static
*/
public function startOfDecade();
/**
* Modify to start of current hour, minutes and seconds become 0
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfHour();
* ```
*/
public function startOfHour(): static;
/**
* Resets the date to the first day of the millennium and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfMillennium();
* ```
*
* @return static
*/
public function startOfMillennium();
/**
* Modify to start of current millisecond, microseconds such as 12345 become 123000
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function startOfMillisecond(): static;
/**
* Modify to start of current minute, seconds become 0
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfMinute();
* ```
*/
public function startOfMinute(): static;
/**
* Resets the date to the first day of the month and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfMonth();
* ```
*
* @return static
*/
public function startOfMonth();
/**
* Resets the date to the first day of the quarter and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfQuarter();
* ```
*
* @return static
*/
public function startOfQuarter();
/**
* Modify to start of current second, microseconds become 0
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function startOfSecond(): static;
/**
* Resets the date to the first day of week (defined in $weekStartsAt) and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->startOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek(Carbon::SUNDAY) . "\n";
* ```
*
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week
*
* @return static
*/
public function startOfWeek(WeekDay|int|null $weekStartsAt = null): static;
/**
* Resets the date to the first day of the year and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfYear();
* ```
*
* @return static
*/
public function startOfYear();
/**
* Subtract given units or interval to the current instance.
*
* @example $date->sub('hour', 3)
* @example $date->sub(15, 'days')
* @example $date->sub(CarbonInterval::days(4))
*
* @param Unit|string|DateInterval|Closure|CarbonConverterInterface $unit
* @param int|float $value
* @param bool|null $overflow
*
* @return static
*/
#[ReturnTypeWillChange]
public function sub($unit, $value = 1, ?bool $overflow = null): static;
/**
* @deprecated Prefer to use add subUTCUnit() which more accurately defines what it's doing.
*
* Subtract seconds to the instance using timestamp. Positive $value travels
* into the past while negative $value travels forward.
*
* @param string $unit
* @param int $value
*
* @return static
*/
public function subRealUnit($unit, $value = 1): static;
/**
* Subtract seconds to the instance using timestamp. Positive $value travels
* into the past while negative $value travels forward.
*
* @param string $unit
* @param int $value
*
* @return static
*/
public function subUTCUnit($unit, $value = 1): static;
/**
* Subtract given units to the current instance.
*/
public function subUnit(Unit|string $unit, $value = 1, ?bool $overflow = null): static;
/**
* Subtract any unit to a new value without overflowing current other unit given.
*
* @param string $valueUnit unit name to modify
* @param int $value amount to subtract to the input unit
* @param string $overflowUnit unit name to not overflow
*/
public function subUnitNoOverflow(string $valueUnit, int $value, string $overflowUnit): static;
/**
* Subtract given units or interval to the current instance.
*
* @see sub()
*
* @param string|DateInterval $unit
* @param int|float $value
* @param bool|null $overflow
*
* @return static
*/
public function subtract($unit, $value = 1, ?bool $overflow = null): static;
/**
* Get the difference in a human-readable format in the current locale from current instance to another
* instance given (or now if null given).
*
* @return string
*/
public function timespan($other = null, $timezone = null): string;
/**
* Set the instance's timestamp.
*
* Timestamp input can be given as int, float or a string containing one or more numbers.
*/
public function timestamp(string|int|float $timestamp): static;
/**
* @alias setTimezone
*/
public function timezone(DateTimeZone|string|int $value): static;
/**
* Get the difference in a human readable format in the current locale from an other
* instance given (or now if null given) to current instance.
*
* When comparing a value in the past to default now:
* 1 hour from now
* 5 months from now
*
* When comparing a value in the future to default now:
* 1 hour ago
* 5 months ago
*
* When comparing a value in the past to another value:
* 1 hour after
* 5 months after
*
* When comparing a value in the future to another value:
* 1 hour before
* 5 months before
*
* @param Carbon|\DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* - 'other' entry (see above)
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function to($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
/**
* Get default array representation.
*
* @example
* ```
* var_dump(Carbon::now()->toArray());
* ```
*/
public function toArray(): array;
/**
* Format the instance as ATOM
*
* @example
* ```
* echo Carbon::now()->toAtomString();
* ```
*/
public function toAtomString(): string;
/**
* Format the instance as COOKIE
*
* @example
* ```
* echo Carbon::now()->toCookieString();
* ```
*/
public function toCookieString(): string;
/**
* @alias toDateTime
*
* Return native DateTime PHP object matching the current instance.
*
* @example
* ```
* var_dump(Carbon::now()->toDate());
* ```
*/
public function toDate(): DateTime;
/**
* Format the instance as date
*
* @example
* ```
* echo Carbon::now()->toDateString();
* ```
*/
public function toDateString(): string;
/**
* Return native DateTime PHP object matching the current instance.
*
* @example
* ```
* var_dump(Carbon::now()->toDateTime());
* ```
*/
public function toDateTime(): DateTime;
/**
* Return native toDateTimeImmutable PHP object matching the current instance.
*
* @example
* ```
* var_dump(Carbon::now()->toDateTimeImmutable());
* ```
*/
public function toDateTimeImmutable(): DateTimeImmutable;
/**
* Format the instance as date and time T-separated with no timezone
*
* @example
* ```
* echo Carbon::now()->toDateTimeLocalString();
* echo "\n";
* echo Carbon::now()->toDateTimeLocalString('minute'); // You can specify precision among: minute, second, millisecond and microsecond
* ```
*/
public function toDateTimeLocalString(string $unitPrecision = 'second'): string;
/**
* Format the instance as date and time
*
* @example
* ```
* echo Carbon::now()->toDateTimeString();
* ```
*/
public function toDateTimeString(string $unitPrecision = 'second'): string;
/**
* Format the instance with day, date and time
*
* @example
* ```
* echo Carbon::now()->toDayDateTimeString();
* ```
*/
public function toDayDateTimeString(): string;
/**
* Format the instance as a readable date
*
* @example
* ```
* echo Carbon::now()->toFormattedDateString();
* ```
*/
public function toFormattedDateString(): string;
/**
* Format the instance with the day, and a readable date
*
* @example
* ```
* echo Carbon::now()->toFormattedDayDateString();
* ```
*/
public function toFormattedDayDateString(): string;
/**
* Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z, if $keepOffset truthy, offset will be kept:
* 1977-04-22T01:00:00-05:00).
*
* @example
* ```
* echo Carbon::now('America/Toronto')->toISOString() . "\n";
* echo Carbon::now('America/Toronto')->toISOString(true) . "\n";
* ```
*
* @param bool $keepOffset Pass true to keep the date offset. Else forced to UTC.
*/
public function toISOString(bool $keepOffset = false): ?string;
/**
* Return a immutable copy of the instance.
*
* @return CarbonImmutable
*/
public function toImmutable();
/**
* Format the instance as ISO8601
*
* @example
* ```
* echo Carbon::now()->toIso8601String();
* ```
*/
public function toIso8601String(): string;
/**
* Convert the instance to UTC and return as Zulu ISO8601
*
* @example
* ```
* echo Carbon::now()->toIso8601ZuluString();
* ```
*/
public function toIso8601ZuluString(string $unitPrecision = 'second'): string;
/**
* Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z) with UTC timezone.
*
* @example
* ```
* echo Carbon::now('America/Toronto')->toJSON();
* ```
*/
public function toJSON(): ?string;
/**
* Return a mutable copy of the instance.
*
* @return Carbon
*/
public function toMutable();
/**
* Get the difference in a human readable format in the current locale from an other
* instance given to now
*
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single part)
* @param int $options human diff options
*
* @return string
*/
public function toNow($syntax = null, $short = false, $parts = 1, $options = null);
/**
* Get default object representation.
*
* @example
* ```
* var_dump(Carbon::now()->toObject());
* ```
*/
public function toObject(): object;
/**
* Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
*
* @param \DateTimeInterface|Carbon|CarbonImmutable|int|null $end period end date or recurrences count if int
* @param int|\DateInterval|string|null $interval period default interval or number of the given $unit
* @param string|null $unit if specified, $interval must be an integer
*/
public function toPeriod($end = null, $interval = null, $unit = null): CarbonPeriod;
/**
* Format the instance as RFC1036
*
* @example
* ```
* echo Carbon::now()->toRfc1036String();
* ```
*/
public function toRfc1036String(): string;
/**
* Format the instance as RFC1123
*
* @example
* ```
* echo Carbon::now()->toRfc1123String();
* ```
*/
public function toRfc1123String(): string;
/**
* Format the instance as RFC2822
*
* @example
* ```
* echo Carbon::now()->toRfc2822String();
* ```
*/
public function toRfc2822String(): string;
/**
* Format the instance as RFC3339.
*
* @example
* ```
* echo Carbon::now()->toRfc3339String() . "\n";
* echo Carbon::now()->toRfc3339String(true) . "\n";
* ```
*/
public function toRfc3339String(bool $extended = false): string;
/**
* Format the instance as RFC7231
*
* @example
* ```
* echo Carbon::now()->toRfc7231String();
* ```
*/
public function toRfc7231String(): string;
/**
* Format the instance as RFC822
*
* @example
* ```
* echo Carbon::now()->toRfc822String();
* ```
*/
public function toRfc822String(): string;
/**
* Format the instance as RFC850
*
* @example
* ```
* echo Carbon::now()->toRfc850String();
* ```
*/
public function toRfc850String(): string;
/**
* Format the instance as RSS
*
* @example
* ```
* echo Carbon::now()->toRssString();
* ```
*/
public function toRssString(): string;
/**
* Returns english human-readable complete date string.
*
* @example
* ```
* echo Carbon::now()->toString();
* ```
*/
public function toString(): string;
/**
* Format the instance as time
*
* @example
* ```
* echo Carbon::now()->toTimeString();
* ```
*/
public function toTimeString(string $unitPrecision = 'second'): string;
/**
* Format the instance as W3C
*
* @example
* ```
* echo Carbon::now()->toW3cString();
* ```
*/
public function toW3cString(): string;
/**
* Create a Carbon instance for today.
*/
public static function today(DateTimeZone|string|int|null $timezone = null): static;
/**
* Create a Carbon instance for tomorrow.
*/
public static function tomorrow(DateTimeZone|string|int|null $timezone = null): static;
/**
* Translate using translation string or callback available.
*
* @param string $key key to find
* @param array $parameters replacement parameters
* @param string|int|float|null $number number if plural
* @param TranslatorInterface|null $translator an optional translator to use
* @param bool $altNumbers pass true to use alternative numbers
*
* @return string
*/
public function translate(string $key, array $parameters = [], string|int|float|null $number = null, ?TranslatorInterface $translator = null, bool $altNumbers = false): string;
/**
* Returns the alternative number for a given integer if available in the current locale.
*
* @param int $number
*
* @return string
*/
public function translateNumber(int $number): string;
/**
* Translate a time string from a locale to an other.
*
* @param string $timeString date/time/duration string to translate (may also contain English)
* @param string|null $from input locale of the $timeString parameter (`Carbon::getLocale()` by default)
* @param string|null $to output locale of the result returned (`"en"` by default)
* @param int $mode specify what to translate with options:
* - self::TRANSLATE_ALL (default)
* - CarbonInterface::TRANSLATE_MONTHS
* - CarbonInterface::TRANSLATE_DAYS
* - CarbonInterface::TRANSLATE_UNITS
* - CarbonInterface::TRANSLATE_MERIDIEM
* You can use pipe to group: CarbonInterface::TRANSLATE_MONTHS | CarbonInterface::TRANSLATE_DAYS
*
* @return string
*/
public static function translateTimeString(string $timeString, ?string $from = null, ?string $to = null, int $mode = self::TRANSLATE_ALL): string;
/**
* Translate a time string from the current locale (`$date->locale()`) to an other.
*
* @param string $timeString time string to translate
* @param string|null $to output locale of the result returned ("en" by default)
*
* @return string
*/
public function translateTimeStringTo(string $timeString, ?string $to = null): string;
/**
* Translate using translation string or callback available.
*
* @param TranslatorInterface $translator an optional translator to use
* @param string $key key to find
* @param array $parameters replacement parameters
* @param int|float|null $number number if plural
*
* @return string
*/
public static function translateWith(TranslatorInterface $translator, string $key, array $parameters = [], $number = null): string;
/**
* Format as ->format() do (using date replacements patterns from https://php.net/manual/en/function.date.php)
* but translate words whenever possible (months, day names, etc.) using the current locale.
*/
public function translatedFormat(string $format): string;
/**
* Set the timezone or returns the timezone name if no arguments passed.
*/
public function tz(DateTimeZone|string|int|null $value = null): static|string;
/**
* @alias getTimestamp
*
* Returns the UNIX timestamp for the current date.
*
* @return int
*/
public function unix(): int;
/**
* @alias to
*
* Get the difference in a human readable format in the current locale from an other
* instance given (or now if null given) to current instance.
*
* @param Carbon|\DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* - 'other' entry (see above)
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function until($other = null, $syntax = null, $short = false, $parts = 1, $options = null);
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* Or you can use method variants: addMonthsWithOverflow/addMonthsNoOverflow, same variants
* are available for quarters, years, decade, centuries, millennia (singular and plural forms).
* @see settings
*
* Indicates if months should be calculated with overflow.
*
* @param bool $monthsOverflow
*
* @return void
*/
public static function useMonthsOverflow(bool $monthsOverflow = true): void;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* @see settings
*
* Enable the strict mode (or disable with passing false).
*
* @param bool $strictModeEnabled
*/
public static function useStrictMode(bool $strictModeEnabled = true): void;
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather use the ->settings() method.
* Or you can use method variants: addYearsWithOverflow/addYearsNoOverflow, same variants
* are available for quarters, years, decade, centuries, millennia (singular and plural forms).
* @see settings
*
* Indicates if years should be calculated with overflow.
*
* @param bool $yearsOverflow
*
* @return void
*/
public static function useYearsOverflow(bool $yearsOverflow = true): void;
/**
* Set the instance's timezone to UTC.
*/
public function utc(): static;
/**
* Returns the minutes offset to UTC if no arguments passed, else set the timezone with given minutes shift passed.
*/
public function utcOffset(?int $minuteOffset = null): static|int;
/**
* Returns the milliseconds timestamps used amongst other by Date javascript objects.
*
* @return float
*/
public function valueOf(): float;
/**
* Get/set the week number using given first day of week and first
* day of year included in the first week. Or use US format if no settings
* given (Sunday / Jan 6).
*
* @param int|null $week
* @param int|null $dayOfWeek
* @param int|null $dayOfYear
*
* @return int|static
*/
public function week($week = null, $dayOfWeek = null, $dayOfYear = null);
/**
* Set/get the week number of year using given first day of week and first
* day of year included in the first week. Or use US format if no settings
* given (Sunday / Jan 6).
*
* @param int|null $year if null, act as a getter, if not null, set the year and return current instance.
* @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
* @param int|null $dayOfYear first day of year included in the week #1
*
* @return int|static
*/
public function weekYear($year = null, $dayOfWeek = null, $dayOfYear = null);
/**
* Get/set the weekday from 0 (Sunday) to 6 (Saturday).
*
* @param WeekDay|int|null $value new value for weekday if using as setter.
*/
public function weekday(WeekDay|int|null $value = null): static|int;
/**
* Get the number of weeks of the current week-year using given first day of week and first
* day of year included in the first week. Or use US format if no settings
* given (Sunday / Jan 6).
*
* @param int|null $dayOfWeek first date of week from 0 (Sunday) to 6 (Saturday)
* @param int|null $dayOfYear first day of year included in the week #1
*
* @return int
*/
public function weeksInYear($dayOfWeek = null, $dayOfYear = null);
/**
* Temporarily sets a static date to be used within the callback.
* Using setTestNow to set the date, executing the callback, then
* clearing the test instance.
*
* /!\ Use this method for unit tests only.
*
* @template T
*
* @param DateTimeInterface|Closure|static|string|false|null $testNow real or mock Carbon instance
* @param Closure(): T $callback
*
* @return T
*/
public static function withTestNow(mixed $testNow, callable $callback): mixed;
/**
* Create a Carbon instance for yesterday.
*/
public static function yesterday(DateTimeZone|string|int|null $timezone = null): static;
//
}
src/Carbon/CarbonInterval.php 0000644 00000351033 14753612052 0012173 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Carbon\Exceptions\BadFluentConstructorException;
use Carbon\Exceptions\BadFluentSetterException;
use Carbon\Exceptions\InvalidCastException;
use Carbon\Exceptions\InvalidFormatException;
use Carbon\Exceptions\InvalidIntervalException;
use Carbon\Exceptions\OutOfRangeException;
use Carbon\Exceptions\ParseErrorException;
use Carbon\Exceptions\UnitNotConfiguredException;
use Carbon\Exceptions\UnknownGetterException;
use Carbon\Exceptions\UnknownSetterException;
use Carbon\Exceptions\UnknownUnitException;
use Carbon\Traits\IntervalRounding;
use Carbon\Traits\IntervalStep;
use Carbon\Traits\LocalFactory;
use Carbon\Traits\MagicParameter;
use Carbon\Traits\Mixin;
use Carbon\Traits\Options;
use Carbon\Traits\ToStringFormat;
use Closure;
use DateInterval;
use DateTime;
use DateTimeInterface;
use DateTimeZone;
use Exception;
use InvalidArgumentException;
use ReflectionException;
use ReturnTypeWillChange;
use RuntimeException;
use Symfony\Contracts\Translation\TranslatorInterface;
use Throwable;
/**
* A simple API extension for DateInterval.
* The implementation provides helpers to handle weeks but only days are saved.
* Weeks are calculated based on the total days of the current instance.
*
* @property int $years Total years of the current interval.
* @property int $months Total months of the current interval.
* @property int $weeks Total weeks of the current interval calculated from the days.
* @property int $dayz Total days of the current interval (weeks * 7 + days).
* @property int $hours Total hours of the current interval.
* @property int $minutes Total minutes of the current interval.
* @property int $seconds Total seconds of the current interval.
* @property int $microseconds Total microseconds of the current interval.
* @property int $milliseconds Total milliseconds of the current interval.
* @property int $microExcludeMilli Remaining microseconds without the milliseconds.
* @property int $dayzExcludeWeeks Total days remaining in the final week of the current instance (days % 7).
* @property int $daysExcludeWeeks alias of dayzExcludeWeeks
* @property-read float $totalYears Number of years equivalent to the interval.
* @property-read float $totalMonths Number of months equivalent to the interval.
* @property-read float $totalWeeks Number of weeks equivalent to the interval.
* @property-read float $totalDays Number of days equivalent to the interval.
* @property-read float $totalDayz Alias for totalDays.
* @property-read float $totalHours Number of hours equivalent to the interval.
* @property-read float $totalMinutes Number of minutes equivalent to the interval.
* @property-read float $totalSeconds Number of seconds equivalent to the interval.
* @property-read float $totalMilliseconds Number of milliseconds equivalent to the interval.
* @property-read float $totalMicroseconds Number of microseconds equivalent to the interval.
* @property-read string $locale locale of the current instance
*
* @method static CarbonInterval years($years = 1) Create instance specifying a number of years or modify the number of years if called on an instance.
* @method static CarbonInterval year($years = 1) Alias for years()
* @method static CarbonInterval months($months = 1) Create instance specifying a number of months or modify the number of months if called on an instance.
* @method static CarbonInterval month($months = 1) Alias for months()
* @method static CarbonInterval weeks($weeks = 1) Create instance specifying a number of weeks or modify the number of weeks if called on an instance.
* @method static CarbonInterval week($weeks = 1) Alias for weeks()
* @method static CarbonInterval days($days = 1) Create instance specifying a number of days or modify the number of days if called on an instance.
* @method static CarbonInterval dayz($days = 1) Alias for days()
* @method static CarbonInterval daysExcludeWeeks($days = 1) Create instance specifying a number of days or modify the number of days (keeping the current number of weeks) if called on an instance.
* @method static CarbonInterval dayzExcludeWeeks($days = 1) Alias for daysExcludeWeeks()
* @method static CarbonInterval day($days = 1) Alias for days()
* @method static CarbonInterval hours($hours = 1) Create instance specifying a number of hours or modify the number of hours if called on an instance.
* @method static CarbonInterval hour($hours = 1) Alias for hours()
* @method static CarbonInterval minutes($minutes = 1) Create instance specifying a number of minutes or modify the number of minutes if called on an instance.
* @method static CarbonInterval minute($minutes = 1) Alias for minutes()
* @method static CarbonInterval seconds($seconds = 1) Create instance specifying a number of seconds or modify the number of seconds if called on an instance.
* @method static CarbonInterval second($seconds = 1) Alias for seconds()
* @method static CarbonInterval milliseconds($milliseconds = 1) Create instance specifying a number of milliseconds or modify the number of milliseconds if called on an instance.
* @method static CarbonInterval millisecond($milliseconds = 1) Alias for milliseconds()
* @method static CarbonInterval microseconds($microseconds = 1) Create instance specifying a number of microseconds or modify the number of microseconds if called on an instance.
* @method static CarbonInterval microsecond($microseconds = 1) Alias for microseconds()
* @method $this addYears(int $years) Add given number of years to the current interval
* @method $this subYears(int $years) Subtract given number of years to the current interval
* @method $this addMonths(int $months) Add given number of months to the current interval
* @method $this subMonths(int $months) Subtract given number of months to the current interval
* @method $this addWeeks(int|float $weeks) Add given number of weeks to the current interval
* @method $this subWeeks(int|float $weeks) Subtract given number of weeks to the current interval
* @method $this addDays(int|float $days) Add given number of days to the current interval
* @method $this subDays(int|float $days) Subtract given number of days to the current interval
* @method $this addHours(int|float $hours) Add given number of hours to the current interval
* @method $this subHours(int|float $hours) Subtract given number of hours to the current interval
* @method $this addMinutes(int|float $minutes) Add given number of minutes to the current interval
* @method $this subMinutes(int|float $minutes) Subtract given number of minutes to the current interval
* @method $this addSeconds(int|float $seconds) Add given number of seconds to the current interval
* @method $this subSeconds(int|float $seconds) Subtract given number of seconds to the current interval
* @method $this addMilliseconds(int|float $milliseconds) Add given number of milliseconds to the current interval
* @method $this subMilliseconds(int|float $milliseconds) Subtract given number of milliseconds to the current interval
* @method $this addMicroseconds(int|float $microseconds) Add given number of microseconds to the current interval
* @method $this subMicroseconds(int|float $microseconds) Subtract given number of microseconds to the current interval
* @method $this roundYear(int|float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method $this roundYears(int|float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method $this floorYear(int|float $precision = 1) Truncate the current instance year with given precision.
* @method $this floorYears(int|float $precision = 1) Truncate the current instance year with given precision.
* @method $this ceilYear(int|float $precision = 1) Ceil the current instance year with given precision.
* @method $this ceilYears(int|float $precision = 1) Ceil the current instance year with given precision.
* @method $this roundMonth(int|float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method $this roundMonths(int|float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method $this floorMonth(int|float $precision = 1) Truncate the current instance month with given precision.
* @method $this floorMonths(int|float $precision = 1) Truncate the current instance month with given precision.
* @method $this ceilMonth(int|float $precision = 1) Ceil the current instance month with given precision.
* @method $this ceilMonths(int|float $precision = 1) Ceil the current instance month with given precision.
* @method $this roundWeek(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this roundWeeks(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this floorWeek(int|float $precision = 1) Truncate the current instance day with given precision.
* @method $this floorWeeks(int|float $precision = 1) Truncate the current instance day with given precision.
* @method $this ceilWeek(int|float $precision = 1) Ceil the current instance day with given precision.
* @method $this ceilWeeks(int|float $precision = 1) Ceil the current instance day with given precision.
* @method $this roundDay(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this roundDays(int|float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this floorDay(int|float $precision = 1) Truncate the current instance day with given precision.
* @method $this floorDays(int|float $precision = 1) Truncate the current instance day with given precision.
* @method $this ceilDay(int|float $precision = 1) Ceil the current instance day with given precision.
* @method $this ceilDays(int|float $precision = 1) Ceil the current instance day with given precision.
* @method $this roundHour(int|float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method $this roundHours(int|float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method $this floorHour(int|float $precision = 1) Truncate the current instance hour with given precision.
* @method $this floorHours(int|float $precision = 1) Truncate the current instance hour with given precision.
* @method $this ceilHour(int|float $precision = 1) Ceil the current instance hour with given precision.
* @method $this ceilHours(int|float $precision = 1) Ceil the current instance hour with given precision.
* @method $this roundMinute(int|float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method $this roundMinutes(int|float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method $this floorMinute(int|float $precision = 1) Truncate the current instance minute with given precision.
* @method $this floorMinutes(int|float $precision = 1) Truncate the current instance minute with given precision.
* @method $this ceilMinute(int|float $precision = 1) Ceil the current instance minute with given precision.
* @method $this ceilMinutes(int|float $precision = 1) Ceil the current instance minute with given precision.
* @method $this roundSecond(int|float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method $this roundSeconds(int|float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method $this floorSecond(int|float $precision = 1) Truncate the current instance second with given precision.
* @method $this floorSeconds(int|float $precision = 1) Truncate the current instance second with given precision.
* @method $this ceilSecond(int|float $precision = 1) Ceil the current instance second with given precision.
* @method $this ceilSeconds(int|float $precision = 1) Ceil the current instance second with given precision.
* @method $this roundMillennium(int|float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method $this roundMillennia(int|float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method $this floorMillennium(int|float $precision = 1) Truncate the current instance millennium with given precision.
* @method $this floorMillennia(int|float $precision = 1) Truncate the current instance millennium with given precision.
* @method $this ceilMillennium(int|float $precision = 1) Ceil the current instance millennium with given precision.
* @method $this ceilMillennia(int|float $precision = 1) Ceil the current instance millennium with given precision.
* @method $this roundCentury(int|float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method $this roundCenturies(int|float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method $this floorCentury(int|float $precision = 1) Truncate the current instance century with given precision.
* @method $this floorCenturies(int|float $precision = 1) Truncate the current instance century with given precision.
* @method $this ceilCentury(int|float $precision = 1) Ceil the current instance century with given precision.
* @method $this ceilCenturies(int|float $precision = 1) Ceil the current instance century with given precision.
* @method $this roundDecade(int|float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method $this roundDecades(int|float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method $this floorDecade(int|float $precision = 1) Truncate the current instance decade with given precision.
* @method $this floorDecades(int|float $precision = 1) Truncate the current instance decade with given precision.
* @method $this ceilDecade(int|float $precision = 1) Ceil the current instance decade with given precision.
* @method $this ceilDecades(int|float $precision = 1) Ceil the current instance decade with given precision.
* @method $this roundQuarter(int|float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method $this roundQuarters(int|float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method $this floorQuarter(int|float $precision = 1) Truncate the current instance quarter with given precision.
* @method $this floorQuarters(int|float $precision = 1) Truncate the current instance quarter with given precision.
* @method $this ceilQuarter(int|float $precision = 1) Ceil the current instance quarter with given precision.
* @method $this ceilQuarters(int|float $precision = 1) Ceil the current instance quarter with given precision.
* @method $this roundMillisecond(int|float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method $this roundMilliseconds(int|float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method $this floorMillisecond(int|float $precision = 1) Truncate the current instance millisecond with given precision.
* @method $this floorMilliseconds(int|float $precision = 1) Truncate the current instance millisecond with given precision.
* @method $this ceilMillisecond(int|float $precision = 1) Ceil the current instance millisecond with given precision.
* @method $this ceilMilliseconds(int|float $precision = 1) Ceil the current instance millisecond with given precision.
* @method $this roundMicrosecond(int|float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method $this roundMicroseconds(int|float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method $this floorMicrosecond(int|float $precision = 1) Truncate the current instance microsecond with given precision.
* @method $this floorMicroseconds(int|float $precision = 1) Truncate the current instance microsecond with given precision.
* @method $this ceilMicrosecond(int|float $precision = 1) Ceil the current instance microsecond with given precision.
* @method $this ceilMicroseconds(int|float $precision = 1) Ceil the current instance microsecond with given precision.
*/
class CarbonInterval extends DateInterval implements CarbonConverterInterface
{
use LocalFactory;
use IntervalRounding;
use IntervalStep;
use MagicParameter;
use Mixin {
Mixin::mixin as baseMixin;
}
use Options;
use ToStringFormat;
/**
* Unlimited parts for forHumans() method.
*
* INF constant can be used instead.
*/
public const NO_LIMIT = -1;
public const POSITIVE = 1;
public const NEGATIVE = -1;
/**
* Interval spec period designators
*/
public const PERIOD_PREFIX = 'P';
public const PERIOD_YEARS = 'Y';
public const PERIOD_MONTHS = 'M';
public const PERIOD_DAYS = 'D';
public const PERIOD_TIME_PREFIX = 'T';
public const PERIOD_HOURS = 'H';
public const PERIOD_MINUTES = 'M';
public const PERIOD_SECONDS = 'S';
public const SPECIAL_TRANSLATIONS = [
1 => [
'option' => CarbonInterface::ONE_DAY_WORDS,
'future' => 'diff_tomorrow',
'past' => 'diff_yesterday',
],
2 => [
'option' => CarbonInterface::TWO_DAY_WORDS,
'future' => 'diff_after_tomorrow',
'past' => 'diff_before_yesterday',
],
];
protected static ?array $cascadeFactors = null;
protected static array $formats = [
'y' => 'y',
'Y' => 'y',
'o' => 'y',
'm' => 'm',
'n' => 'm',
'W' => 'weeks',
'd' => 'd',
'j' => 'd',
'z' => 'd',
'h' => 'h',
'g' => 'h',
'H' => 'h',
'G' => 'h',
'i' => 'i',
's' => 's',
'u' => 'micro',
'v' => 'milli',
];
private static ?array $flipCascadeFactors = null;
private static bool $floatSettersEnabled = false;
/**
* The registered macros.
*/
protected static array $macros = [];
/**
* Timezone handler for settings() method.
*/
protected DateTimeZone|string|int|null $timezoneSetting = null;
/**
* The input used to create the interval.
*/
protected mixed $originalInput = null;
/**
* Start date if interval was created from a difference between 2 dates.
*/
protected ?CarbonInterface $startDate = null;
/**
* End date if interval was created from a difference between 2 dates.
*/
protected ?CarbonInterface $endDate = null;
/**
* End date if interval was created from a difference between 2 dates.
*/
protected ?DateInterval $rawInterval = null;
/**
* Flag if the interval was made from a diff with absolute flag on.
*/
protected bool $absolute = false;
protected ?array $initialValues = null;
/**
* Set the instance's timezone from a string or object.
*/
public function setTimezone(DateTimeZone|string|int $timezone): static
{
$this->timezoneSetting = $timezone;
$this->checkStartAndEnd();
if ($this->startDate) {
$this->startDate = $this->startDate
->avoidMutation()
->setTimezone($timezone);
$this->rawInterval = null;
}
if ($this->endDate) {
$this->endDate = $this->endDate
->avoidMutation()
->setTimezone($timezone);
$this->rawInterval = null;
}
return $this;
}
/**
* Set the instance's timezone from a string or object and add/subtract the offset difference.
*/
public function shiftTimezone(DateTimeZone|string|int $timezone): static
{
$this->timezoneSetting = $timezone;
$this->checkStartAndEnd();
if ($this->startDate) {
$this->startDate = $this->startDate
->avoidMutation()
->shiftTimezone($timezone);
$this->rawInterval = null;
}
if ($this->endDate) {
$this->endDate = $this->endDate
->avoidMutation()
->shiftTimezone($timezone);
$this->rawInterval = null;
}
return $this;
}
/**
* Mapping of units and factors for cascading.
*
* Should only be modified by changing the factors or referenced constants.
*/
public static function getCascadeFactors(): array
{
return static::$cascadeFactors ?: static::getDefaultCascadeFactors();
}
protected static function getDefaultCascadeFactors(): array
{
return [
'milliseconds' => [CarbonInterface::MICROSECONDS_PER_MILLISECOND, 'microseconds'],
'seconds' => [CarbonInterface::MILLISECONDS_PER_SECOND, 'milliseconds'],
'minutes' => [CarbonInterface::SECONDS_PER_MINUTE, 'seconds'],
'hours' => [CarbonInterface::MINUTES_PER_HOUR, 'minutes'],
'dayz' => [CarbonInterface::HOURS_PER_DAY, 'hours'],
'weeks' => [CarbonInterface::DAYS_PER_WEEK, 'dayz'],
'months' => [CarbonInterface::WEEKS_PER_MONTH, 'weeks'],
'years' => [CarbonInterface::MONTHS_PER_YEAR, 'months'],
];
}
/**
* Set default cascading factors for ->cascade() method.
*
* @param array $cascadeFactors
*/
public static function setCascadeFactors(array $cascadeFactors)
{
self::$flipCascadeFactors = null;
static::$cascadeFactors = $cascadeFactors;
}
/**
* This option allow you to opt-in for the Carbon 3 behavior where float
* values will no longer be cast to integer (so truncated).
*
* ⚠️ This settings will be applied globally, which mean your whole application
* code including the third-party dependencies that also may use Carbon will
* adopt the new behavior.
*/
public static function enableFloatSetters(bool $floatSettersEnabled = true): void
{
self::$floatSettersEnabled = $floatSettersEnabled;
}
///////////////////////////////////////////////////////////////////
//////////////////////////// CONSTRUCTORS /////////////////////////
///////////////////////////////////////////////////////////////////
/**
* Create a new CarbonInterval instance.
*
* @param Closure|DateInterval|string|int|null $years
* @param int|float|null $months
* @param int|float|null $weeks
* @param int|float|null $days
* @param int|float|null $hours
* @param int|float|null $minutes
* @param int|float|null $seconds
* @param int|float|null $microseconds
*
* @throws Exception when the interval_spec (passed as $years) cannot be parsed as an interval.
*/
public function __construct($years = null, $months = null, $weeks = null, $days = null, $hours = null, $minutes = null, $seconds = null, $microseconds = null)
{
$this->originalInput = \func_num_args() === 1 ? $years : \func_get_args();
if ($years instanceof Closure) {
$this->step = $years;
$years = null;
}
if ($years instanceof DateInterval) {
parent::__construct(static::getDateIntervalSpec($years));
$this->f = $years->f;
self::copyNegativeUnits($years, $this);
return;
}
$spec = $years;
$isStringSpec = (\is_string($spec) && !preg_match('/^[\d.]/', $spec));
if (!$isStringSpec || (float) $years) {
$spec = static::PERIOD_PREFIX;
$spec .= $years > 0 ? $years.static::PERIOD_YEARS : '';
$spec .= $months > 0 ? $months.static::PERIOD_MONTHS : '';
$specDays = 0;
$specDays += $weeks > 0 ? $weeks * static::getDaysPerWeek() : 0;
$specDays += $days > 0 ? $days : 0;
$spec .= $specDays > 0 ? $specDays.static::PERIOD_DAYS : '';
if ($hours > 0 || $minutes > 0 || $seconds > 0) {
$spec .= static::PERIOD_TIME_PREFIX;
$spec .= $hours > 0 ? $hours.static::PERIOD_HOURS : '';
$spec .= $minutes > 0 ? $minutes.static::PERIOD_MINUTES : '';
$spec .= $seconds > 0 ? $seconds.static::PERIOD_SECONDS : '';
}
if ($spec === static::PERIOD_PREFIX) {
// Allow the zero interval.
$spec .= '0'.static::PERIOD_YEARS;
}
}
try {
parent::__construct($spec);
} catch (Throwable $exception) {
try {
parent::__construct('PT0S');
if ($isStringSpec) {
if (!preg_match('/^P
(?:(?[+-]?\d*(?:\.\d+)?)Y)?
(?:(?[+-]?\d*(?:\.\d+)?)M)?
(?:(?[+-]?\d*(?:\.\d+)?)W)?
(?:(?[+-]?\d*(?:\.\d+)?)D)?
(?:T
(?:(?[+-]?\d*(?:\.\d+)?)H)?
(?:(?[+-]?\d*(?:\.\d+)?)M)?
(?:(?[+-]?\d*(?:\.\d+)?)S)?
)?
$/x', $spec, $match)) {
throw new InvalidArgumentException("Invalid duration: $spec");
}
$years = (float) ($match['year'] ?? 0);
$this->assertSafeForInteger('year', $years);
$months = (float) ($match['month'] ?? 0);
$this->assertSafeForInteger('month', $months);
$weeks = (float) ($match['week'] ?? 0);
$this->assertSafeForInteger('week', $weeks);
$days = (float) ($match['day'] ?? 0);
$this->assertSafeForInteger('day', $days);
$hours = (float) ($match['hour'] ?? 0);
$this->assertSafeForInteger('hour', $hours);
$minutes = (float) ($match['minute'] ?? 0);
$this->assertSafeForInteger('minute', $minutes);
$seconds = (float) ($match['second'] ?? 0);
$this->assertSafeForInteger('second', $seconds);
$microseconds = (int) str_pad(
substr(explode('.', $match['second'] ?? '0.0')[1] ?? '0', 0, 6),
6,
'0',
);
}
$totalDays = (($weeks * static::getDaysPerWeek()) + $days);
$this->assertSafeForInteger('days total (including weeks)', $totalDays);
$this->y = (int) $years;
$this->m = (int) $months;
$this->d = (int) $totalDays;
$this->h = (int) $hours;
$this->i = (int) $minutes;
$this->s = (int) $seconds;
$secondFloatPart = (float) ($microseconds / CarbonInterface::MICROSECONDS_PER_SECOND);
$this->f = $secondFloatPart;
$intervalMicroseconds = (int) ($this->f * CarbonInterface::MICROSECONDS_PER_SECOND);
$intervalSeconds = $seconds - $secondFloatPart;
if (
((float) $this->y) !== $years ||
((float) $this->m) !== $months ||
((float) $this->d) !== $totalDays ||
((float) $this->h) !== $hours ||
((float) $this->i) !== $minutes ||
((float) $this->s) !== $intervalSeconds ||
$intervalMicroseconds !== ((int) $microseconds)
) {
$this->add(static::fromString(
($years - $this->y).' years '.
($months - $this->m).' months '.
($totalDays - $this->d).' days '.
($hours - $this->h).' hours '.
($minutes - $this->i).' minutes '.
($intervalSeconds - $this->s).' seconds '.
($microseconds - $intervalMicroseconds).' microseconds ',
));
}
} catch (Throwable $secondException) {
throw $secondException instanceof OutOfRangeException ? $secondException : $exception;
}
}
if ($microseconds !== null) {
$this->f = $microseconds / CarbonInterface::MICROSECONDS_PER_SECOND;
}
foreach (['years', 'months', 'weeks', 'days', 'hours', 'minutes', 'seconds'] as $unit) {
if ($$unit < 0) {
$this->set($unit, $$unit);
}
}
}
/**
* Returns the factor for a given source-to-target couple.
*
* @param string $source
* @param string $target
*
* @return int|float|null
*/
public static function getFactor($source, $target)
{
$source = self::standardizeUnit($source);
$target = self::standardizeUnit($target);
$factors = self::getFlipCascadeFactors();
if (isset($factors[$source])) {
[$to, $factor] = $factors[$source];
if ($to === $target) {
return $factor;
}
return $factor * static::getFactor($to, $target);
}
return null;
}
/**
* Returns the factor for a given source-to-target couple if set,
* else try to find the appropriate constant as the factor, such as Carbon::DAYS_PER_WEEK.
*
* @param string $source
* @param string $target
*
* @return int|float|null
*/
public static function getFactorWithDefault($source, $target)
{
$factor = self::getFactor($source, $target);
if ($factor) {
return $factor;
}
static $defaults = [
'month' => ['year' => Carbon::MONTHS_PER_YEAR],
'week' => ['month' => Carbon::WEEKS_PER_MONTH],
'day' => ['week' => Carbon::DAYS_PER_WEEK],
'hour' => ['day' => Carbon::HOURS_PER_DAY],
'minute' => ['hour' => Carbon::MINUTES_PER_HOUR],
'second' => ['minute' => Carbon::SECONDS_PER_MINUTE],
'millisecond' => ['second' => Carbon::MILLISECONDS_PER_SECOND],
'microsecond' => ['millisecond' => Carbon::MICROSECONDS_PER_MILLISECOND],
];
return $defaults[$source][$target] ?? null;
}
/**
* Returns current config for days per week.
*
* @return int|float
*/
public static function getDaysPerWeek()
{
return static::getFactor('dayz', 'weeks') ?: Carbon::DAYS_PER_WEEK;
}
/**
* Returns current config for hours per day.
*
* @return int|float
*/
public static function getHoursPerDay()
{
return static::getFactor('hours', 'dayz') ?: Carbon::HOURS_PER_DAY;
}
/**
* Returns current config for minutes per hour.
*
* @return int|float
*/
public static function getMinutesPerHour()
{
return static::getFactor('minutes', 'hours') ?: Carbon::MINUTES_PER_HOUR;
}
/**
* Returns current config for seconds per minute.
*
* @return int|float
*/
public static function getSecondsPerMinute()
{
return static::getFactor('seconds', 'minutes') ?: Carbon::SECONDS_PER_MINUTE;
}
/**
* Returns current config for microseconds per second.
*
* @return int|float
*/
public static function getMillisecondsPerSecond()
{
return static::getFactor('milliseconds', 'seconds') ?: Carbon::MILLISECONDS_PER_SECOND;
}
/**
* Returns current config for microseconds per second.
*
* @return int|float
*/
public static function getMicrosecondsPerMillisecond()
{
return static::getFactor('microseconds', 'milliseconds') ?: Carbon::MICROSECONDS_PER_MILLISECOND;
}
/**
* Create a new CarbonInterval instance from specific values.
* This is an alias for the constructor that allows better fluent
* syntax as it allows you to do CarbonInterval::create(1)->fn() rather than
* (new CarbonInterval(1))->fn().
*
* @param int $years
* @param int $months
* @param int $weeks
* @param int $days
* @param int $hours
* @param int $minutes
* @param int $seconds
* @param int $microseconds
*
* @throws Exception when the interval_spec (passed as $years) cannot be parsed as an interval.
*
* @return static
*/
public static function create($years = null, $months = null, $weeks = null, $days = null, $hours = null, $minutes = null, $seconds = null, $microseconds = null)
{
return new static($years, $months, $weeks, $days, $hours, $minutes, $seconds, $microseconds);
}
/**
* Parse a string into a new CarbonInterval object according to the specified format.
*
* @example
* ```
* echo Carboninterval::createFromFormat('H:i', '1:30');
* ```
*
* @param string $format Format of the $interval input string
* @param string|null $interval Input string to convert into an interval
*
* @throws \Carbon\Exceptions\ParseErrorException when the $interval cannot be parsed as an interval.
*
* @return static
*/
public static function createFromFormat(string $format, ?string $interval): static
{
$instance = new static(0);
$length = mb_strlen($format);
if (preg_match('/s([,.])([uv])$/', $format, $match)) {
$interval = explode($match[1], $interval);
$index = \count($interval) - 1;
$interval[$index] = str_pad($interval[$index], $match[2] === 'v' ? 3 : 6, '0');
$interval = implode($match[1], $interval);
}
$interval ??= '';
for ($index = 0; $index < $length; $index++) {
$expected = mb_substr($format, $index, 1);
$nextCharacter = mb_substr($interval, 0, 1);
$unit = static::$formats[$expected] ?? null;
if ($unit) {
if (!preg_match('/^-?\d+/', $interval, $match)) {
throw new ParseErrorException('number', $nextCharacter);
}
$interval = mb_substr($interval, mb_strlen($match[0]));
$instance->$unit += (int) ($match[0]);
continue;
}
if ($nextCharacter !== $expected) {
throw new ParseErrorException(
"'$expected'",
$nextCharacter,
'Allowed substitutes for interval formats are '.implode(', ', array_keys(static::$formats))."\n".
'See https://php.net/manual/en/function.date.php for their meaning',
);
}
$interval = mb_substr($interval, 1);
}
if ($interval !== '') {
throw new ParseErrorException(
'end of string',
$interval,
);
}
return $instance;
}
/**
* Return the original source used to create the current interval.
*
* @return array|int|string|DateInterval|mixed|null
*/
public function original()
{
return $this->originalInput;
}
/**
* Return the start date if interval was created from a difference between 2 dates.
*
* @return CarbonInterface|null
*/
public function start(): ?CarbonInterface
{
$this->checkStartAndEnd();
return $this->startDate;
}
/**
* Return the end date if interval was created from a difference between 2 dates.
*
* @return CarbonInterface|null
*/
public function end(): ?CarbonInterface
{
$this->checkStartAndEnd();
return $this->endDate;
}
/**
* Get rid of the original input, start date and end date that may be kept in memory.
*
* @return $this
*/
public function optimize(): static
{
$this->originalInput = null;
$this->startDate = null;
$this->endDate = null;
$this->rawInterval = null;
$this->absolute = false;
return $this;
}
/**
* Get a copy of the instance.
*
* @return static
*/
public function copy(): static
{
$date = new static(0);
$date->copyProperties($this);
$date->step = $this->step;
return $date;
}
/**
* Get a copy of the instance.
*
* @return static
*/
public function clone(): static
{
return $this->copy();
}
/**
* Provide static helpers to create instances. Allows CarbonInterval::years(3).
*
* Note: This is done using the magic method to allow static and instance methods to
* have the same names.
*
* @param string $method magic method name called
* @param array $parameters parameters list
*
* @return static|mixed|null
*/
public static function __callStatic(string $method, array $parameters)
{
try {
$interval = new static(0);
$localStrictModeEnabled = $interval->localStrictModeEnabled;
$interval->localStrictModeEnabled = true;
$result = static::hasMacro($method)
? static::bindMacroContext(null, function () use (&$method, &$parameters, &$interval) {
return $interval->callMacro($method, $parameters);
})
: $interval->$method(...$parameters);
$interval->localStrictModeEnabled = $localStrictModeEnabled;
return $result;
} catch (BadFluentSetterException $exception) {
if (Carbon::isStrictModeEnabled()) {
throw new BadFluentConstructorException($method, 0, $exception);
}
return null;
}
}
/**
* Evaluate the PHP generated by var_export() and recreate the exported CarbonInterval instance.
*
* @param array $dump data as exported by var_export()
*
* @return static
*/
#[ReturnTypeWillChange]
public static function __set_state($dump)
{
/** @noinspection PhpVoidFunctionResultUsedInspection */
/** @var DateInterval $dateInterval */
$dateInterval = parent::__set_state($dump);
return static::instance($dateInterval);
}
/**
* Return the current context from inside a macro callee or a new one if static.
*
* @return static
*/
protected static function this(): static
{
return end(static::$macroContextStack) ?: new static(0);
}
/**
* Creates a CarbonInterval from string.
*
* Format:
*
* Suffix | Unit | Example | DateInterval expression
* -------|---------|---------|------------------------
* y | years | 1y | P1Y
* mo | months | 3mo | P3M
* w | weeks | 2w | P2W
* d | days | 28d | P28D
* h | hours | 4h | PT4H
* m | minutes | 12m | PT12M
* s | seconds | 59s | PT59S
*
* e. g. `1w 3d 4h 32m 23s` is converted to 10 days 4 hours 32 minutes and 23 seconds.
*
* Special cases:
* - An empty string will return a zero interval
* - Fractions are allowed for weeks, days, hours and minutes and will be converted
* and rounded to the next smaller value (caution: 0.5w = 4d)
*
* @param string $intervalDefinition
*
* @throws InvalidIntervalException
*
* @return static
*/
public static function fromString(string $intervalDefinition): static
{
if (empty($intervalDefinition)) {
return self::withOriginal(new static(0), $intervalDefinition);
}
$years = 0;
$months = 0;
$weeks = 0;
$days = 0;
$hours = 0;
$minutes = 0;
$seconds = 0;
$milliseconds = 0;
$microseconds = 0;
$pattern = '/(-?\d+(?:\.\d+)?)\h*([^\d\h]*)/i';
preg_match_all($pattern, $intervalDefinition, $parts, PREG_SET_ORDER);
while ([$part, $value, $unit] = array_shift($parts)) {
$intValue = (int) $value;
$fraction = (float) $value - $intValue;
// Fix calculation precision
switch (round($fraction, 6)) {
case 1:
$fraction = 0;
$intValue++;
break;
case 0:
$fraction = 0;
break;
}
switch ($unit === 'µs' ? 'µs' : strtolower($unit)) {
case 'millennia':
case 'millennium':
$years += $intValue * CarbonInterface::YEARS_PER_MILLENNIUM;
break;
case 'century':
case 'centuries':
$years += $intValue * CarbonInterface::YEARS_PER_CENTURY;
break;
case 'decade':
case 'decades':
$years += $intValue * CarbonInterface::YEARS_PER_DECADE;
break;
case 'year':
case 'years':
case 'y':
case 'yr':
case 'yrs':
$years += $intValue;
break;
case 'quarter':
case 'quarters':
$months += $intValue * CarbonInterface::MONTHS_PER_QUARTER;
break;
case 'month':
case 'months':
case 'mo':
case 'mos':
$months += $intValue;
break;
case 'week':
case 'weeks':
case 'w':
$weeks += $intValue;
if ($fraction) {
$parts[] = [null, $fraction * static::getDaysPerWeek(), 'd'];
}
break;
case 'day':
case 'days':
case 'd':
$days += $intValue;
if ($fraction) {
$parts[] = [null, $fraction * static::getHoursPerDay(), 'h'];
}
break;
case 'hour':
case 'hours':
case 'h':
$hours += $intValue;
if ($fraction) {
$parts[] = [null, $fraction * static::getMinutesPerHour(), 'm'];
}
break;
case 'minute':
case 'minutes':
case 'm':
$minutes += $intValue;
if ($fraction) {
$parts[] = [null, $fraction * static::getSecondsPerMinute(), 's'];
}
break;
case 'second':
case 'seconds':
case 's':
$seconds += $intValue;
if ($fraction) {
$parts[] = [null, $fraction * static::getMillisecondsPerSecond(), 'ms'];
}
break;
case 'millisecond':
case 'milliseconds':
case 'milli':
case 'ms':
$milliseconds += $intValue;
if ($fraction) {
$microseconds += round($fraction * static::getMicrosecondsPerMillisecond());
}
break;
case 'microsecond':
case 'microseconds':
case 'micro':
case 'µs':
$microseconds += $intValue;
break;
default:
throw new InvalidIntervalException(
\sprintf('Invalid part %s in definition %s', $part, $intervalDefinition),
);
}
}
return self::withOriginal(
new static($years, $months, $weeks, $days, $hours, $minutes, $seconds, $milliseconds * Carbon::MICROSECONDS_PER_MILLISECOND + $microseconds),
$intervalDefinition,
);
}
/**
* Creates a CarbonInterval from string using a different locale.
*
* @param string $interval interval string in the given language (may also contain English).
* @param string|null $locale if locale is null or not specified, current global locale will be used instead.
*
* @return static
*/
public static function parseFromLocale(string $interval, ?string $locale = null): static
{
return static::fromString(Carbon::translateTimeString($interval, $locale ?: static::getLocale(), CarbonInterface::DEFAULT_LOCALE));
}
/**
* Create an interval from the difference between 2 dates.
*
* @param \Carbon\Carbon|\DateTimeInterface|mixed $start
* @param \Carbon\Carbon|\DateTimeInterface|mixed $end
*
* @return static
*/
public static function diff($start, $end = null, bool $absolute = false, array $skip = []): static
{
$start = $start instanceof CarbonInterface ? $start : Carbon::make($start);
$end = $end instanceof CarbonInterface ? $end : Carbon::make($end);
$rawInterval = $start->diffAsDateInterval($end, $absolute);
$interval = static::instance($rawInterval, $skip);
$interval->absolute = $absolute;
$interval->rawInterval = $rawInterval;
$interval->startDate = $start;
$interval->endDate = $end;
$interval->initialValues = $interval->getInnerValues();
return $interval;
}
/**
* Invert the interval if it's inverted.
*
* @param bool $absolute do nothing if set to false
*
* @return $this
*/
public function abs(bool $absolute = false): static
{
if ($absolute && $this->invert) {
$this->invert();
}
return $this;
}
/**
* @alias abs
*
* Invert the interval if it's inverted.
*
* @param bool $absolute do nothing if set to false
*
* @return $this
*/
public function absolute(bool $absolute = true): static
{
return $this->abs($absolute);
}
/**
* Cast the current instance into the given class.
*
* @template T of DateInterval
*
* @psalm-param class-string $className The $className::instance() method will be called to cast the current object.
*
* @return T
*/
public function cast(string $className): mixed
{
return self::castIntervalToClass($this, $className);
}
/**
* Create a CarbonInterval instance from a DateInterval one. Can not instance
* DateInterval objects created from DateTime::diff() as you can't externally
* set the $days field.
*
* @param DateInterval $interval
* @param bool $skipCopy set to true to return the passed object
* (without copying it) if it's already of the
* current class
*
* @return static
*/
public static function instance(DateInterval $interval, array $skip = [], bool $skipCopy = false): static
{
if ($skipCopy && $interval instanceof static) {
return $interval;
}
return self::castIntervalToClass($interval, static::class, $skip);
}
/**
* Make a CarbonInterval instance from given variable if possible.
*
* Always return a new instance. Parse only strings and only these likely to be intervals (skip dates
* and recurrences). Throw an exception for invalid format, but otherwise return null.
*
* @param mixed|int|DateInterval|string|Closure|Unit|null $interval interval or number of the given $unit
* @param Unit|string|null $unit if specified, $interval must be an integer
* @param bool $skipCopy set to true to return the passed object
* (without copying it) if it's already of the
* current class
*
* @return static|null
*/
public static function make($interval, $unit = null, bool $skipCopy = false): ?self
{
if ($interval instanceof Unit) {
$interval = $interval->interval();
}
if ($unit instanceof Unit) {
$unit = $unit->value;
}
if ($unit) {
$interval = "$interval $unit";
}
if ($interval instanceof DateInterval) {
return static::instance($interval, [], $skipCopy);
}
if ($interval instanceof Closure) {
return self::withOriginal(new static($interval), $interval);
}
if (!\is_string($interval)) {
return null;
}
return static::makeFromString($interval);
}
protected static function makeFromString(string $interval): ?self
{
$interval = preg_replace('/\s+/', ' ', trim($interval));
if (preg_match('/^P[T\d]/', $interval)) {
return new static($interval);
}
if (preg_match('/^(?:\h*-?\d+(?:\.\d+)?\h*[a-z]+)+$/i', $interval)) {
return static::fromString($interval);
}
$intervalInstance = static::createFromDateString($interval);
return $intervalInstance->isEmpty() ? null : $intervalInstance;
}
protected function resolveInterval($interval): ?self
{
if (!($interval instanceof self)) {
return self::make($interval);
}
return $interval;
}
/**
* Sets up a DateInterval from the relative parts of the string.
*
* @param string $datetime
*
* @return static
*
* @link https://php.net/manual/en/dateinterval.createfromdatestring.php
*/
public static function createFromDateString(string $datetime): static
{
$string = strtr($datetime, [
',' => ' ',
' and ' => ' ',
]);
$previousException = null;
try {
$interval = parent::createFromDateString($string);
} catch (Throwable $exception) {
$interval = null;
$previousException = $exception;
}
$interval ?: throw new InvalidFormatException(
'Could not create interval from: '.var_export($datetime, true),
previous: $previousException,
);
if (!($interval instanceof static)) {
$interval = static::instance($interval);
}
return self::withOriginal($interval, $datetime);
}
///////////////////////////////////////////////////////////////////
///////////////////////// GETTERS AND SETTERS /////////////////////
///////////////////////////////////////////////////////////////////
/**
* Get a part of the CarbonInterval object.
*/
public function get(Unit|string $name): int|float|string|null
{
$name = Unit::toName($name);
if (str_starts_with($name, 'total')) {
return $this->total(substr($name, 5));
}
$resolvedUnit = Carbon::singularUnit(rtrim($name, 'z'));
return match ($resolvedUnit) {
'tzname', 'tz_name' => match (true) {
($this->timezoneSetting === null) => null,
\is_string($this->timezoneSetting) => $this->timezoneSetting,
($this->timezoneSetting instanceof DateTimeZone) => $this->timezoneSetting->getName(),
default => CarbonTimeZone::instance($this->timezoneSetting)->getName(),
},
'year' => $this->y,
'month' => $this->m,
'day' => $this->d,
'hour' => $this->h,
'minute' => $this->i,
'second' => $this->s,
'milli', 'millisecond' => (int) (round($this->f * Carbon::MICROSECONDS_PER_SECOND) /
Carbon::MICROSECONDS_PER_MILLISECOND),
'micro', 'microsecond' => (int) round($this->f * Carbon::MICROSECONDS_PER_SECOND),
'microexcludemilli' => (int) round($this->f * Carbon::MICROSECONDS_PER_SECOND) %
Carbon::MICROSECONDS_PER_MILLISECOND,
'week' => (int) ($this->d / (int) static::getDaysPerWeek()),
'daysexcludeweek', 'dayzexcludeweek' => $this->d % (int) static::getDaysPerWeek(),
'locale' => $this->getTranslatorLocale(),
default => throw new UnknownGetterException($name, previous: new UnknownGetterException($resolvedUnit)),
};
}
/**
* Get a part of the CarbonInterval object.
*/
public function __get(string $name): int|float|string|null
{
return $this->get($name);
}
/**
* Set a part of the CarbonInterval object.
*
* @param Unit|string|array $name
* @param int $value
*
* @throws UnknownSetterException
*
* @return $this
*/
public function set($name, $value = null): static
{
$properties = \is_array($name) ? $name : [$name => $value];
foreach ($properties as $key => $value) {
switch (Carbon::singularUnit($key instanceof Unit ? $key->value : rtrim((string) $key, 'z'))) {
case 'year':
$this->checkIntegerValue($key, $value);
$this->y = $value;
$this->handleDecimalPart('year', $value, $this->y);
break;
case 'month':
$this->checkIntegerValue($key, $value);
$this->m = $value;
$this->handleDecimalPart('month', $value, $this->m);
break;
case 'week':
$this->checkIntegerValue($key, $value);
$days = $value * (int) static::getDaysPerWeek();
$this->assertSafeForInteger('days total (including weeks)', $days);
$this->d = $days;
$this->handleDecimalPart('day', $days, $this->d);
break;
case 'day':
if ($value === false) {
break;
}
$this->checkIntegerValue($key, $value);
$this->d = $value;
$this->handleDecimalPart('day', $value, $this->d);
break;
case 'daysexcludeweek':
case 'dayzexcludeweek':
$this->checkIntegerValue($key, $value);
$days = $this->weeks * (int) static::getDaysPerWeek() + $value;
$this->assertSafeForInteger('days total (including weeks)', $days);
$this->d = $days;
$this->handleDecimalPart('day', $days, $this->d);
break;
case 'hour':
$this->checkIntegerValue($key, $value);
$this->h = $value;
$this->handleDecimalPart('hour', $value, $this->h);
break;
case 'minute':
$this->checkIntegerValue($key, $value);
$this->i = $value;
$this->handleDecimalPart('minute', $value, $this->i);
break;
case 'second':
$this->checkIntegerValue($key, $value);
$this->s = $value;
$this->handleDecimalPart('second', $value, $this->s);
break;
case 'milli':
case 'millisecond':
$this->microseconds = $value * Carbon::MICROSECONDS_PER_MILLISECOND + $this->microseconds % Carbon::MICROSECONDS_PER_MILLISECOND;
break;
case 'micro':
case 'microsecond':
$this->f = $value / Carbon::MICROSECONDS_PER_SECOND;
break;
default:
if (str_starts_with($key, ' * ')) {
return $this->setSetting(substr($key, 3), $value);
}
if ($this->localStrictModeEnabled ?? Carbon::isStrictModeEnabled()) {
throw new UnknownSetterException($key);
}
$this->$key = $value;
}
}
return $this;
}
/**
* Set a part of the CarbonInterval object.
*
* @param string $name
* @param int $value
*
* @throws UnknownSetterException
*/
public function __set(string $name, $value)
{
$this->set($name, $value);
}
/**
* Allow setting of weeks and days to be cumulative.
*
* @param int $weeks Number of weeks to set
* @param int $days Number of days to set
*
* @return static
*/
public function weeksAndDays(int $weeks, int $days): static
{
$this->dayz = ($weeks * static::getDaysPerWeek()) + $days;
return $this;
}
/**
* Returns true if the interval is empty for each unit.
*
* @return bool
*/
public function isEmpty(): bool
{
return $this->years === 0 &&
$this->months === 0 &&
$this->dayz === 0 &&
!$this->days &&
$this->hours === 0 &&
$this->minutes === 0 &&
$this->seconds === 0 &&
$this->microseconds === 0;
}
/**
* Register a custom macro.
*
* Pass null macro to remove it.
*
* @example
* ```
* CarbonInterval::macro('twice', function () {
* return $this->times(2);
* });
* echo CarbonInterval::hours(2)->twice();
* ```
*/
public static function macro(string $name, ?callable $macro): void
{
static::$macros[$name] = $macro;
}
/**
* Register macros from a mixin object.
*
* @example
* ```
* CarbonInterval::mixin(new class {
* public function daysToHours() {
* return function () {
* $this->hours += $this->days;
* $this->days = 0;
*
* return $this;
* };
* }
* public function hoursToDays() {
* return function () {
* $this->days += $this->hours;
* $this->hours = 0;
*
* return $this;
* };
* }
* });
* echo CarbonInterval::hours(5)->hoursToDays() . "\n";
* echo CarbonInterval::days(5)->daysToHours() . "\n";
* ```
*
* @param object|string $mixin
*
* @throws ReflectionException
*
* @return void
*/
public static function mixin($mixin): void
{
static::baseMixin($mixin);
}
/**
* Check if macro is registered.
*
* @param string $name
*
* @return bool
*/
public static function hasMacro(string $name): bool
{
return isset(static::$macros[$name]);
}
/**
* Call given macro.
*
* @param string $name
* @param array $parameters
*
* @return mixed
*/
protected function callMacro(string $name, array $parameters)
{
$macro = static::$macros[$name];
if ($macro instanceof Closure) {
$boundMacro = @$macro->bindTo($this, static::class) ?: @$macro->bindTo(null, static::class);
return ($boundMacro ?: $macro)(...$parameters);
}
return $macro(...$parameters);
}
/**
* Allow fluent calls on the setters... CarbonInterval::years(3)->months(5)->day().
*
* Note: This is done using the magic method to allow static and instance methods to
* have the same names.
*
* @param string $method magic method name called
* @param array $parameters parameters list
*
* @throws BadFluentSetterException|Throwable
*
* @return static|int|float|string
*/
public function __call(string $method, array $parameters)
{
if (static::hasMacro($method)) {
return static::bindMacroContext($this, function () use (&$method, &$parameters) {
return $this->callMacro($method, $parameters);
});
}
$roundedValue = $this->callRoundMethod($method, $parameters);
if ($roundedValue !== null) {
return $roundedValue;
}
if (preg_match('/^(?add|sub)(?[A-Z].*)$/', $method, $match)) {
$value = $this->getMagicParameter($parameters, 0, Carbon::pluralUnit($match['unit']), 0);
return $this->{$match['method']}($value, $match['unit']);
}
$value = $this->getMagicParameter($parameters, 0, Carbon::pluralUnit($method), 1);
try {
$this->set($method, $value);
} catch (UnknownSetterException $exception) {
if ($this->localStrictModeEnabled ?? Carbon::isStrictModeEnabled()) {
throw new BadFluentSetterException($method, 0, $exception);
}
}
return $this;
}
protected function getForHumansInitialVariables($syntax, $short): array
{
if (\is_array($syntax)) {
return $syntax;
}
if (\is_int($short)) {
return [
'parts' => $short,
'short' => false,
];
}
if (\is_bool($syntax)) {
return [
'short' => $syntax,
'syntax' => CarbonInterface::DIFF_ABSOLUTE,
];
}
return [];
}
/**
* @param mixed $syntax
* @param mixed $short
* @param mixed $parts
* @param mixed $options
*
* @return array
*/
protected function getForHumansParameters($syntax = null, $short = false, $parts = self::NO_LIMIT, $options = null): array
{
$optionalSpace = ' ';
$default = $this->getTranslationMessage('list.0') ?? $this->getTranslationMessage('list') ?? ' ';
/** @var bool|string $join */
$join = $default === '' ? '' : ' ';
/** @var bool|array|string $altNumbers */
$altNumbers = false;
$aUnit = false;
$minimumUnit = 's';
$skip = [];
extract($this->getForHumansInitialVariables($syntax, $short));
$skip = array_map(
static fn ($unit) => $unit instanceof Unit ? $unit->value : $unit,
(array) $skip,
);
$skip = array_map(
'strtolower',
array_filter($skip, static fn ($unit) => \is_string($unit) && $unit !== ''),
);
$syntax ??= CarbonInterface::DIFF_ABSOLUTE;
if ($parts === self::NO_LIMIT) {
$parts = INF;
}
$options ??= static::getHumanDiffOptions();
if ($join === false) {
$join = ' ';
} elseif ($join === true) {
$join = [
$default,
$this->getTranslationMessage('list.1') ?? $default,
];
}
if ($altNumbers && $altNumbers !== true) {
$language = new Language($this->locale);
$altNumbers = \in_array($language->getCode(), (array) $altNumbers, true);
}
if (\is_array($join)) {
[$default, $last] = $join;
if ($default !== ' ') {
$optionalSpace = '';
}
$join = function ($list) use ($default, $last) {
if (\count($list) < 2) {
return implode('', $list);
}
$end = array_pop($list);
return implode($default, $list).$last.$end;
};
}
if (\is_string($join)) {
if ($join !== ' ') {
$optionalSpace = '';
}
$glue = $join;
$join = static fn ($list) => implode($glue, $list);
}
$interpolations = [
':optional-space' => $optionalSpace,
];
$translator ??= isset($locale) ? Translator::get($locale) : null;
return [$syntax, $short, $parts, $options, $join, $aUnit, $altNumbers, $interpolations, $minimumUnit, $skip, $translator];
}
protected static function getRoundingMethodFromOptions(int $options): ?string
{
if ($options & CarbonInterface::ROUND) {
return 'round';
}
if ($options & CarbonInterface::CEIL) {
return 'ceil';
}
if ($options & CarbonInterface::FLOOR) {
return 'floor';
}
return null;
}
/**
* Returns interval values as an array where key are the unit names and values the counts.
*
* @return int[]
*/
public function toArray(): array
{
return [
'years' => $this->years,
'months' => $this->months,
'weeks' => $this->weeks,
'days' => $this->daysExcludeWeeks,
'hours' => $this->hours,
'minutes' => $this->minutes,
'seconds' => $this->seconds,
'microseconds' => $this->microseconds,
];
}
/**
* Returns interval non-zero values as an array where key are the unit names and values the counts.
*
* @return int[]
*/
public function getNonZeroValues(): array
{
return array_filter($this->toArray(), 'intval');
}
/**
* Returns interval values as an array where key are the unit names and values the counts
* from the biggest non-zero one the the smallest non-zero one.
*
* @return int[]
*/
public function getValuesSequence(): array
{
$nonZeroValues = $this->getNonZeroValues();
if ($nonZeroValues === []) {
return [];
}
$keys = array_keys($nonZeroValues);
$firstKey = $keys[0];
$lastKey = $keys[\count($keys) - 1];
$values = [];
$record = false;
foreach ($this->toArray() as $unit => $count) {
if ($unit === $firstKey) {
$record = true;
}
if ($record) {
$values[$unit] = $count;
}
if ($unit === $lastKey) {
$record = false;
}
}
return $values;
}
/**
* Get the current interval in a human readable format in the current locale.
*
* @example
* ```
* echo CarbonInterval::fromString('4d 3h 40m')->forHumans() . "\n";
* echo CarbonInterval::fromString('4d 3h 40m')->forHumans(['parts' => 2]) . "\n";
* echo CarbonInterval::fromString('4d 3h 40m')->forHumans(['parts' => 3, 'join' => true]) . "\n";
* echo CarbonInterval::fromString('4d 3h 40m')->forHumans(['short' => true]) . "\n";
* echo CarbonInterval::fromString('1d 24h')->forHumans(['join' => ' or ']) . "\n";
* echo CarbonInterval::fromString('1d 24h')->forHumans(['minimumUnit' => 'hour']) . "\n";
* ```
*
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contain:
* ⦿ 'syntax' entry (see below)
* ⦿ 'short' entry (see below)
* ⦿ 'parts' entry (see below)
* ⦿ 'options' entry (see below)
* ⦿ 'skip' entry, list of units to skip (array of strings or a single string,
* ` it can be the unit name (singular or plural) or its shortcut
* ` (y, m, w, d, h, min, s, ms, µs).
* ⦿ 'aUnit' entry, prefer "an hour" over "1 hour" if true
* ⦿ 'altNumbers' entry, use alternative numbers if available
* ` (from the current language if true is passed, from the given language(s)
* ` if array or string is passed)
* ⦿ 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* ⦿ 'minimumUnit' entry determines the smallest unit of time to display can be long or
* ` short form of the units, e.g. 'hour' or 'h' (default value: s)
* ⦿ 'locale' language in which the diff should be output (has no effect if 'translator' key is set)
* ⦿ 'translator' a custom translator to use to translator the output.
* if int passed, it adds modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: -1: no limits)
* @param int $options human diff options
*
* @throws Exception
*
* @return string
*/
public function forHumans($syntax = null, $short = false, $parts = self::NO_LIMIT, $options = null): string
{
/* @var TranslatorInterface|null $translator */
[$syntax, $short, $parts, $options, $join, $aUnit, $altNumbers, $interpolations, $minimumUnit, $skip, $translator] = $this
->getForHumansParameters($syntax, $short, $parts, $options);
$interval = [];
$syntax = (int) ($syntax ?? CarbonInterface::DIFF_ABSOLUTE);
$absolute = $syntax === CarbonInterface::DIFF_ABSOLUTE;
$relativeToNow = $syntax === CarbonInterface::DIFF_RELATIVE_TO_NOW;
$count = 1;
$unit = $short ? 's' : 'second';
$isFuture = $this->invert === 1;
$transId = $relativeToNow ? ($isFuture ? 'from_now' : 'ago') : ($isFuture ? 'after' : 'before');
$declensionMode = null;
$translator ??= $this->getLocalTranslator();
$handleDeclensions = function ($unit, $count, $index = 0, $parts = 1) use ($interpolations, $transId, $translator, $altNumbers, $absolute, &$declensionMode) {
if (!$absolute) {
$declensionMode = $declensionMode ?? $this->translate($transId.'_mode');
if ($this->needsDeclension($declensionMode, $index, $parts)) {
// Some languages have special pluralization for past and future tense.
$key = $unit.'_'.$transId;
$result = $this->translate($key, $interpolations, $count, $translator, $altNumbers);
if ($result !== $key) {
return $result;
}
}
}
$result = $this->translate($unit, $interpolations, $count, $translator, $altNumbers);
if ($result !== $unit) {
return $result;
}
return null;
};
$intervalValues = $this;
$method = static::getRoundingMethodFromOptions($options);
if ($method) {
$previousCount = INF;
while (
\count($intervalValues->getNonZeroValues()) > $parts &&
($count = \count($keys = array_keys($intervalValues->getValuesSequence()))) > 1
) {
$index = min($count, $previousCount - 1) - 2;
if ($index < 0) {
break;
}
$intervalValues = $this->copy()->roundUnit(
$keys[$index],
1,
$method,
);
$previousCount = $count;
}
}
$diffIntervalArray = [
['value' => $intervalValues->years, 'unit' => 'year', 'unitShort' => 'y'],
['value' => $intervalValues->months, 'unit' => 'month', 'unitShort' => 'm'],
['value' => $intervalValues->weeks, 'unit' => 'week', 'unitShort' => 'w'],
['value' => $intervalValues->daysExcludeWeeks, 'unit' => 'day', 'unitShort' => 'd'],
['value' => $intervalValues->hours, 'unit' => 'hour', 'unitShort' => 'h'],
['value' => $intervalValues->minutes, 'unit' => 'minute', 'unitShort' => 'min'],
['value' => $intervalValues->seconds, 'unit' => 'second', 'unitShort' => 's'],
['value' => $intervalValues->milliseconds, 'unit' => 'millisecond', 'unitShort' => 'ms'],
['value' => $intervalValues->microExcludeMilli, 'unit' => 'microsecond', 'unitShort' => 'µs'],
];
if (!empty($skip)) {
foreach ($diffIntervalArray as $index => &$unitData) {
$nextIndex = $index + 1;
if ($unitData['value'] &&
isset($diffIntervalArray[$nextIndex]) &&
\count(array_intersect([$unitData['unit'], $unitData['unit'].'s', $unitData['unitShort']], $skip))
) {
$diffIntervalArray[$nextIndex]['value'] += $unitData['value'] *
self::getFactorWithDefault($diffIntervalArray[$nextIndex]['unit'], $unitData['unit']);
$unitData['value'] = 0;
}
}
}
$transChoice = function ($short, $unitData, $index, $parts) use ($absolute, $handleDeclensions, $translator, $aUnit, $altNumbers, $interpolations) {
$count = $unitData['value'];
if ($short) {
$result = $handleDeclensions($unitData['unitShort'], $count, $index, $parts);
if ($result !== null) {
return $result;
}
} elseif ($aUnit) {
$result = $handleDeclensions('a_'.$unitData['unit'], $count, $index, $parts);
if ($result !== null) {
return $result;
}
}
if (!$absolute) {
return $handleDeclensions($unitData['unit'], $count, $index, $parts);
}
return $this->translate($unitData['unit'], $interpolations, $count, $translator, $altNumbers);
};
$fallbackUnit = ['second', 's'];
foreach ($diffIntervalArray as $diffIntervalData) {
if ($diffIntervalData['value'] > 0) {
$unit = $short ? $diffIntervalData['unitShort'] : $diffIntervalData['unit'];
$count = $diffIntervalData['value'];
$interval[] = [$short, $diffIntervalData];
} elseif ($options & CarbonInterface::SEQUENTIAL_PARTS_ONLY && \count($interval) > 0) {
break;
}
// break the loop after we get the required number of parts in array
if (\count($interval) >= $parts) {
break;
}
// break the loop after we have reached the minimum unit
if (\in_array($minimumUnit, [$diffIntervalData['unit'], $diffIntervalData['unitShort']], true)) {
$fallbackUnit = [$diffIntervalData['unit'], $diffIntervalData['unitShort']];
break;
}
}
$actualParts = \count($interval);
foreach ($interval as $index => &$item) {
$item = $transChoice($item[0], $item[1], $index, $actualParts);
}
if (\count($interval) === 0) {
if ($relativeToNow && $options & CarbonInterface::JUST_NOW) {
$key = 'diff_now';
$translation = $this->translate($key, $interpolations, null, $translator);
if ($translation !== $key) {
return $translation;
}
}
$count = $options & CarbonInterface::NO_ZERO_DIFF ? 1 : 0;
$unit = $fallbackUnit[$short ? 1 : 0];
$interval[] = $this->translate($unit, $interpolations, $count, $translator, $altNumbers);
}
// join the interval parts by a space
$time = $join($interval);
unset($diffIntervalArray, $interval);
if ($absolute) {
return $time;
}
$isFuture = $this->invert === 1;
$transId = $relativeToNow ? ($isFuture ? 'from_now' : 'ago') : ($isFuture ? 'after' : 'before');
if ($parts === 1) {
if ($relativeToNow && $unit === 'day') {
$specialTranslations = static::SPECIAL_TRANSLATIONS[$count] ?? null;
if ($specialTranslations && $options & $specialTranslations['option']) {
$key = $specialTranslations[$isFuture ? 'future' : 'past'];
$translation = $this->translate($key, $interpolations, null, $translator);
if ($translation !== $key) {
return $translation;
}
}
}
$aTime = $aUnit ? $handleDeclensions('a_'.$unit, $count) : null;
$time = $aTime ?: $handleDeclensions($unit, $count) ?: $time;
}
$time = [':time' => $time];
return $this->translate($transId, array_merge($time, $interpolations, $time), null, $translator);
}
public function format(string $format): string
{
$output = parent::format($format);
if (!str_contains($format, '%a') || !isset($this->startDate, $this->endDate)) {
return $output;
}
$this->rawInterval ??= $this->startDate->diffAsDateInterval($this->endDate);
return str_replace('(unknown)', $this->rawInterval->format('%a'), $output);
}
/**
* Format the instance as a string using the forHumans() function.
*
* @throws Exception
*
* @return string
*/
public function __toString(): string
{
$format = $this->localToStringFormat
?? $this->getFactory()->getSettings()['toStringFormat']
?? null;
if (!$format) {
return $this->forHumans();
}
if ($format instanceof Closure) {
return $format($this);
}
return $this->format($format);
}
/**
* Return native DateInterval PHP object matching the current instance.
*
* @example
* ```
* var_dump(CarbonInterval::hours(2)->toDateInterval());
* ```
*
* @return DateInterval
*/
public function toDateInterval(): DateInterval
{
return self::castIntervalToClass($this, DateInterval::class);
}
/**
* Convert the interval to a CarbonPeriod.
*
* @param DateTimeInterface|string|int ...$params Start date, [end date or recurrences] and optional settings.
*
* @return CarbonPeriod
*/
public function toPeriod(...$params): CarbonPeriod
{
if ($this->timezoneSetting) {
$timeZone = \is_string($this->timezoneSetting)
? new DateTimeZone($this->timezoneSetting)
: $this->timezoneSetting;
if ($timeZone instanceof DateTimeZone) {
array_unshift($params, $timeZone);
}
}
$class = ($params[0] ?? null) instanceof DateTime ? CarbonPeriod::class : CarbonPeriodImmutable::class;
return $class::create($this, ...$params);
}
/**
* Decompose the current interval into
*
* @param mixed|int|DateInterval|string|Closure|Unit|null $interval interval or number of the given $unit
* @param Unit|string|null $unit if specified, $interval must be an integer
*
* @return CarbonPeriod
*/
public function stepBy($interval, Unit|string|null $unit = null): CarbonPeriod
{
$this->checkStartAndEnd();
$start = $this->startDate ?? CarbonImmutable::make('now');
$end = $this->endDate ?? $start->copy()->add($this);
try {
$step = static::make($interval, $unit);
} catch (InvalidFormatException $exception) {
if ($unit || (\is_string($interval) ? preg_match('/(\s|\d)/', $interval) : !($interval instanceof Unit))) {
throw $exception;
}
$step = static::make(1, $interval);
}
$class = $start instanceof DateTime ? CarbonPeriod::class : CarbonPeriodImmutable::class;
return $class::create($step, $start, $end);
}
/**
* Invert the interval.
*
* @param bool|int $inverted if a parameter is passed, the passed value cast as 1 or 0 is used
* as the new value of the ->invert property.
*
* @return $this
*/
public function invert($inverted = null): static
{
$this->invert = (\func_num_args() === 0 ? !$this->invert : $inverted) ? 1 : 0;
return $this;
}
protected function solveNegativeInterval(): static
{
if (!$this->isEmpty() && $this->years <= 0 && $this->months <= 0 && $this->dayz <= 0 && $this->hours <= 0 && $this->minutes <= 0 && $this->seconds <= 0 && $this->microseconds <= 0) {
$this->years *= self::NEGATIVE;
$this->months *= self::NEGATIVE;
$this->dayz *= self::NEGATIVE;
$this->hours *= self::NEGATIVE;
$this->minutes *= self::NEGATIVE;
$this->seconds *= self::NEGATIVE;
$this->microseconds *= self::NEGATIVE;
$this->invert();
}
return $this;
}
/**
* Add the passed interval to the current instance.
*
* @param string|DateInterval $unit
* @param int|float $value
*
* @return $this
*/
public function add($unit, $value = 1): static
{
if (is_numeric($unit)) {
[$value, $unit] = [$unit, $value];
}
if (\is_string($unit) && !preg_match('/^\s*-?\d/', $unit)) {
$unit = "$value $unit";
$value = 1;
}
$interval = static::make($unit);
if (!$interval) {
throw new InvalidIntervalException('This type of data cannot be added/subtracted.');
}
if ($value !== 1) {
$interval->times($value);
}
$sign = ($this->invert === 1) !== ($interval->invert === 1) ? self::NEGATIVE : self::POSITIVE;
$this->years += $interval->y * $sign;
$this->months += $interval->m * $sign;
$this->dayz += ($interval->days === false ? $interval->d : $interval->days) * $sign;
$this->hours += $interval->h * $sign;
$this->minutes += $interval->i * $sign;
$this->seconds += $interval->s * $sign;
$this->microseconds += $interval->microseconds * $sign;
$this->solveNegativeInterval();
return $this;
}
/**
* Subtract the passed interval to the current instance.
*
* @param string|DateInterval $unit
* @param int|float $value
*
* @return $this
*/
public function sub($unit, $value = 1): static
{
if (is_numeric($unit)) {
[$value, $unit] = [$unit, $value];
}
return $this->add($unit, -(float) $value);
}
/**
* Subtract the passed interval to the current instance.
*
* @param string|DateInterval $unit
* @param int|float $value
*
* @return $this
*/
public function subtract($unit, $value = 1): static
{
return $this->sub($unit, $value);
}
/**
* Add given parameters to the current interval.
*
* @param int $years
* @param int $months
* @param int|float $weeks
* @param int|float $days
* @param int|float $hours
* @param int|float $minutes
* @param int|float $seconds
* @param int|float $microseconds
*
* @return $this
*/
public function plus(
$years = 0,
$months = 0,
$weeks = 0,
$days = 0,
$hours = 0,
$minutes = 0,
$seconds = 0,
$microseconds = 0
): static {
return $this->add("
$years years $months months $weeks weeks $days days
$hours hours $minutes minutes $seconds seconds $microseconds microseconds
");
}
/**
* Add given parameters to the current interval.
*
* @param int $years
* @param int $months
* @param int|float $weeks
* @param int|float $days
* @param int|float $hours
* @param int|float $minutes
* @param int|float $seconds
* @param int|float $microseconds
*
* @return $this
*/
public function minus(
$years = 0,
$months = 0,
$weeks = 0,
$days = 0,
$hours = 0,
$minutes = 0,
$seconds = 0,
$microseconds = 0
): static {
return $this->sub("
$years years $months months $weeks weeks $days days
$hours hours $minutes minutes $seconds seconds $microseconds microseconds
");
}
/**
* Multiply current instance given number of times. times() is naive, it multiplies each unit
* (so day can be greater than 31, hour can be greater than 23, etc.) and the result is rounded
* separately for each unit.
*
* Use times() when you want a fast and approximated calculation that does not cascade units.
*
* For a precise and cascaded calculation,
*
* @see multiply()
*
* @param float|int $factor
*
* @return $this
*/
public function times($factor): static
{
if ($factor < 0) {
$this->invert = $this->invert ? 0 : 1;
$factor = -$factor;
}
$this->years = (int) round($this->years * $factor);
$this->months = (int) round($this->months * $factor);
$this->dayz = (int) round($this->dayz * $factor);
$this->hours = (int) round($this->hours * $factor);
$this->minutes = (int) round($this->minutes * $factor);
$this->seconds = (int) round($this->seconds * $factor);
$this->microseconds = (int) round($this->microseconds * $factor);
return $this;
}
/**
* Divide current instance by a given divider. shares() is naive, it divides each unit separately
* and the result is rounded for each unit. So 5 hours and 20 minutes shared by 3 becomes 2 hours
* and 7 minutes.
*
* Use shares() when you want a fast and approximated calculation that does not cascade units.
*
* For a precise and cascaded calculation,
*
* @see divide()
*
* @param float|int $divider
*
* @return $this
*/
public function shares($divider): static
{
return $this->times(1 / $divider);
}
protected function copyProperties(self $interval, $ignoreSign = false): static
{
$this->years = $interval->years;
$this->months = $interval->months;
$this->dayz = $interval->dayz;
$this->hours = $interval->hours;
$this->minutes = $interval->minutes;
$this->seconds = $interval->seconds;
$this->microseconds = $interval->microseconds;
if (!$ignoreSign) {
$this->invert = $interval->invert;
}
return $this;
}
/**
* Multiply and cascade current instance by a given factor.
*
* @param float|int $factor
*
* @return $this
*/
public function multiply($factor): static
{
if ($factor < 0) {
$this->invert = $this->invert ? 0 : 1;
$factor = -$factor;
}
$yearPart = (int) floor($this->years * $factor); // Split calculation to prevent imprecision
if ($yearPart) {
$this->years -= $yearPart / $factor;
}
return $this->copyProperties(
static::create($yearPart)
->microseconds(abs($this->totalMicroseconds) * $factor)
->cascade(),
true,
);
}
/**
* Divide and cascade current instance by a given divider.
*
* @param float|int $divider
*
* @return $this
*/
public function divide($divider): static
{
return $this->multiply(1 / $divider);
}
/**
* Get the interval_spec string of a date interval.
*
* @param DateInterval $interval
*
* @return string
*/
public static function getDateIntervalSpec(DateInterval $interval, bool $microseconds = false, array $skip = []): string
{
$date = array_filter([
static::PERIOD_YEARS => abs($interval->y),
static::PERIOD_MONTHS => abs($interval->m),
static::PERIOD_DAYS => abs($interval->d),
]);
$skip = array_map([Unit::class, 'toNameIfUnit'], $skip);
if (
$interval->days >= CarbonInterface::DAYS_PER_WEEK * CarbonInterface::WEEKS_PER_MONTH &&
(!isset($date[static::PERIOD_YEARS]) || \count(array_intersect(['y', 'year', 'years'], $skip))) &&
(!isset($date[static::PERIOD_MONTHS]) || \count(array_intersect(['m', 'month', 'months'], $skip)))
) {
$date = [
static::PERIOD_DAYS => abs($interval->days),
];
}
$seconds = abs($interval->s);
if ($microseconds && $interval->f > 0) {
$seconds = \sprintf('%d.%06d', $seconds, abs($interval->f) * 1000000);
}
$time = array_filter([
static::PERIOD_HOURS => abs($interval->h),
static::PERIOD_MINUTES => abs($interval->i),
static::PERIOD_SECONDS => $seconds,
]);
$specString = static::PERIOD_PREFIX;
foreach ($date as $key => $value) {
$specString .= $value.$key;
}
if (\count($time) > 0) {
$specString .= static::PERIOD_TIME_PREFIX;
foreach ($time as $key => $value) {
$specString .= $value.$key;
}
}
return $specString === static::PERIOD_PREFIX ? 'PT0S' : $specString;
}
/**
* Get the interval_spec string.
*
* @return string
*/
public function spec(bool $microseconds = false): string
{
return static::getDateIntervalSpec($this, $microseconds);
}
/**
* Comparing 2 date intervals.
*
* @param DateInterval $first
* @param DateInterval $second
*
* @return int 0, 1 or -1
*/
public static function compareDateIntervals(DateInterval $first, DateInterval $second): int
{
$current = Carbon::now();
$passed = $current->avoidMutation()->add($second);
$current->add($first);
return $current <=> $passed;
}
/**
* Comparing with passed interval.
*
* @param DateInterval $interval
*
* @return int 0, 1 or -1
*/
public function compare(DateInterval $interval): int
{
return static::compareDateIntervals($this, $interval);
}
/**
* Convert overflowed values into bigger units.
*
* @return $this
*/
public function cascade(): static
{
return $this->doCascade(false);
}
public function hasNegativeValues(): bool
{
foreach ($this->toArray() as $value) {
if ($value < 0) {
return true;
}
}
return false;
}
public function hasPositiveValues(): bool
{
foreach ($this->toArray() as $value) {
if ($value > 0) {
return true;
}
}
return false;
}
/**
* Get amount of given unit equivalent to the interval.
*
* @param string $unit
*
* @throws UnknownUnitException|UnitNotConfiguredException
*
* @return float
*/
public function total(string $unit): float
{
$realUnit = $unit = strtolower($unit);
if (\in_array($unit, ['days', 'weeks'])) {
$realUnit = 'dayz';
} elseif (!\in_array($unit, ['microseconds', 'milliseconds', 'seconds', 'minutes', 'hours', 'dayz', 'months', 'years'])) {
throw new UnknownUnitException($unit);
}
$this->checkStartAndEnd();
if ($this->startDate && $this->endDate) {
$diff = $this->startDate->diffInUnit($unit, $this->endDate);
return $this->absolute ? abs($diff) : $diff;
}
$result = 0;
$cumulativeFactor = 0;
$unitFound = false;
$factors = self::getFlipCascadeFactors();
$daysPerWeek = (int) static::getDaysPerWeek();
$values = [
'years' => $this->years,
'months' => $this->months,
'weeks' => (int) ($this->d / $daysPerWeek),
'dayz' => fmod($this->d, $daysPerWeek),
'hours' => $this->hours,
'minutes' => $this->minutes,
'seconds' => $this->seconds,
'milliseconds' => (int) ($this->microseconds / Carbon::MICROSECONDS_PER_MILLISECOND),
'microseconds' => $this->microseconds % Carbon::MICROSECONDS_PER_MILLISECOND,
];
if (isset($factors['dayz']) && $factors['dayz'][0] !== 'weeks') {
$values['dayz'] += $values['weeks'] * $daysPerWeek;
$values['weeks'] = 0;
}
foreach ($factors as $source => [$target, $factor]) {
if ($source === $realUnit) {
$unitFound = true;
$value = $values[$source];
$result += $value;
$cumulativeFactor = 1;
}
if ($factor === false) {
if ($unitFound) {
break;
}
$result = 0;
$cumulativeFactor = 0;
continue;
}
if ($target === $realUnit) {
$unitFound = true;
}
if ($cumulativeFactor) {
$cumulativeFactor *= $factor;
$result += $values[$target] * $cumulativeFactor;
continue;
}
$value = $values[$source];
$result = ($result + $value) / $factor;
}
if (isset($target) && !$cumulativeFactor) {
$result += $values[$target];
}
if (!$unitFound) {
throw new UnitNotConfiguredException($unit);
}
if ($this->invert) {
$result *= self::NEGATIVE;
}
if ($unit === 'weeks') {
$result /= $daysPerWeek;
}
// Cast as int numbers with no decimal part
return fmod($result, 1) === 0.0 ? (int) $result : $result;
}
/**
* Determines if the instance is equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @see equalTo()
*
* @return bool
*/
public function eq($interval): bool
{
return $this->equalTo($interval);
}
/**
* Determines if the instance is equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @return bool
*/
public function equalTo($interval): bool
{
$interval = $this->resolveInterval($interval);
if ($interval === null) {
return false;
}
$step = $this->getStep();
if ($step) {
return $step === $interval->getStep();
}
if ($this->isEmpty()) {
return $interval->isEmpty();
}
$cascadedInterval = $this->copy()->cascade();
$comparedInterval = $interval->copy()->cascade();
return $cascadedInterval->invert === $comparedInterval->invert &&
$cascadedInterval->getNonZeroValues() === $comparedInterval->getNonZeroValues();
}
/**
* Determines if the instance is not equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @see notEqualTo()
*
* @return bool
*/
public function ne($interval): bool
{
return $this->notEqualTo($interval);
}
/**
* Determines if the instance is not equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @return bool
*/
public function notEqualTo($interval): bool
{
return !$this->eq($interval);
}
/**
* Determines if the instance is greater (longer) than another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @see greaterThan()
*
* @return bool
*/
public function gt($interval): bool
{
return $this->greaterThan($interval);
}
/**
* Determines if the instance is greater (longer) than another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @return bool
*/
public function greaterThan($interval): bool
{
$interval = $this->resolveInterval($interval);
return $interval === null || $this->totalMicroseconds > $interval->totalMicroseconds;
}
/**
* Determines if the instance is greater (longer) than or equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @see greaterThanOrEqualTo()
*
* @return bool
*/
public function gte($interval): bool
{
return $this->greaterThanOrEqualTo($interval);
}
/**
* Determines if the instance is greater (longer) than or equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @return bool
*/
public function greaterThanOrEqualTo($interval): bool
{
return $this->greaterThan($interval) || $this->equalTo($interval);
}
/**
* Determines if the instance is less (shorter) than another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @see lessThan()
*
* @return bool
*/
public function lt($interval): bool
{
return $this->lessThan($interval);
}
/**
* Determines if the instance is less (shorter) than another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @return bool
*/
public function lessThan($interval): bool
{
$interval = $this->resolveInterval($interval);
return $interval !== null && $this->totalMicroseconds < $interval->totalMicroseconds;
}
/**
* Determines if the instance is less (shorter) than or equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @see lessThanOrEqualTo()
*
* @return bool
*/
public function lte($interval): bool
{
return $this->lessThanOrEqualTo($interval);
}
/**
* Determines if the instance is less (shorter) than or equal to another
*
* @param CarbonInterval|DateInterval|mixed $interval
*
* @return bool
*/
public function lessThanOrEqualTo($interval): bool
{
return $this->lessThan($interval) || $this->equalTo($interval);
}
/**
* Determines if the instance is between two others.
*
* The third argument allow you to specify if bounds are included or not (true by default)
* but for when you including/excluding bounds may produce different results in your application,
* we recommend to use the explicit methods ->betweenIncluded() or ->betweenExcluded() instead.
*
* @example
* ```
* CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::days(3)); // true
* CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::hours(36)); // false
* CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::days(2)); // true
* CarbonInterval::hours(48)->between(CarbonInterval::day(), CarbonInterval::days(2), false); // false
* ```
*
* @param CarbonInterval|DateInterval|mixed $interval1
* @param CarbonInterval|DateInterval|mixed $interval2
* @param bool $equal Indicates if an equal to comparison should be done
*
* @return bool
*/
public function between($interval1, $interval2, bool $equal = true): bool
{
return $equal
? $this->greaterThanOrEqualTo($interval1) && $this->lessThanOrEqualTo($interval2)
: $this->greaterThan($interval1) && $this->lessThan($interval2);
}
/**
* Determines if the instance is between two others, bounds excluded.
*
* @example
* ```
* CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(3)); // true
* CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::hours(36)); // false
* CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(2)); // true
* ```
*
* @param CarbonInterval|DateInterval|mixed $interval1
* @param CarbonInterval|DateInterval|mixed $interval2
*
* @return bool
*/
public function betweenIncluded($interval1, $interval2): bool
{
return $this->between($interval1, $interval2, true);
}
/**
* Determines if the instance is between two others, bounds excluded.
*
* @example
* ```
* CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(3)); // true
* CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::hours(36)); // false
* CarbonInterval::hours(48)->betweenExcluded(CarbonInterval::day(), CarbonInterval::days(2)); // false
* ```
*
* @param CarbonInterval|DateInterval|mixed $interval1
* @param CarbonInterval|DateInterval|mixed $interval2
*
* @return bool
*/
public function betweenExcluded($interval1, $interval2): bool
{
return $this->between($interval1, $interval2, false);
}
/**
* Determines if the instance is between two others
*
* @example
* ```
* CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::days(3)); // true
* CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::hours(36)); // false
* CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::days(2)); // true
* CarbonInterval::hours(48)->isBetween(CarbonInterval::day(), CarbonInterval::days(2), false); // false
* ```
*
* @param CarbonInterval|DateInterval|mixed $interval1
* @param CarbonInterval|DateInterval|mixed $interval2
* @param bool $equal Indicates if an equal to comparison should be done
*
* @return bool
*/
public function isBetween($interval1, $interval2, bool $equal = true): bool
{
return $this->between($interval1, $interval2, $equal);
}
/**
* Round the current instance at the given unit with given precision if specified and the given function.
*
* @throws Exception
*/
public function roundUnit(string $unit, DateInterval|string|int|float $precision = 1, string $function = 'round'): static
{
if (static::getCascadeFactors() !== static::getDefaultCascadeFactors()) {
$value = $function($this->total($unit) / $precision) * $precision;
$inverted = $value < 0;
return $this->copyProperties(self::fromString(
number_format(abs($value), 12, '.', '').' '.$unit
)->invert($inverted)->cascade());
}
$base = CarbonImmutable::parse('2000-01-01 00:00:00', 'UTC')
->roundUnit($unit, $precision, $function);
$next = $base->add($this);
$inverted = $next < $base;
if ($inverted) {
$next = $base->sub($this);
}
$this->copyProperties(
$next
->roundUnit($unit, $precision, $function)
->diff($base),
);
return $this->invert($inverted);
}
/**
* Truncate the current instance at the given unit with given precision if specified.
*
* @param string $unit
* @param float|int|string|DateInterval|null $precision
*
* @throws Exception
*
* @return $this
*/
public function floorUnit(string $unit, $precision = 1): static
{
return $this->roundUnit($unit, $precision, 'floor');
}
/**
* Ceil the current instance at the given unit with given precision if specified.
*
* @param string $unit
* @param float|int|string|DateInterval|null $precision
*
* @throws Exception
*
* @return $this
*/
public function ceilUnit(string $unit, $precision = 1): static
{
return $this->roundUnit($unit, $precision, 'ceil');
}
/**
* Round the current instance second with given precision if specified.
*
* @param float|int|string|DateInterval|null $precision
* @param string $function
*
* @throws Exception
*
* @return $this
*/
public function round($precision = 1, string $function = 'round'): static
{
return $this->roundWith($precision, $function);
}
/**
* Round the current instance second with given precision if specified.
*
* @throws Exception
*
* @return $this
*/
public function floor(DateInterval|string|float|int $precision = 1): static
{
return $this->round($precision, 'floor');
}
/**
* Ceil the current instance second with given precision if specified.
*
* @throws Exception
*
* @return $this
*/
public function ceil(DateInterval|string|float|int $precision = 1): static
{
return $this->round($precision, 'ceil');
}
public function __unserialize(array $data): void
{
$properties = array_combine(
array_map(
static fn (mixed $key) => \is_string($key)
? str_replace('tzName', 'timezoneSetting', $key)
: $key,
array_keys($data),
),
$data,
);
if (method_exists(parent::class, '__unserialize')) {
// PHP >= 8.2
parent::__unserialize($properties);
return;
}
// PHP <= 8.1
// @codeCoverageIgnoreStart
foreach ($properties as $property => $value) {
$name = preg_replace('/^\0.+\0/', '', $property);
$localStrictMode = $this->localStrictModeEnabled;
$this->localStrictModeEnabled = false;
$this->$name = $value;
if ($name !== 'localStrictModeEnabled') {
$this->localStrictModeEnabled = $localStrictMode;
}
}
// @codeCoverageIgnoreEnd
}
/**
* @template T
*
* @param T $interval
* @param mixed $original
*
* @return T
*/
private static function withOriginal(mixed $interval, mixed $original): mixed
{
if ($interval instanceof self) {
$interval->originalInput = $original;
}
return $interval;
}
private static function standardizeUnit(string $unit): string
{
$unit = rtrim($unit, 'sz').'s';
return $unit === 'days' ? 'dayz' : $unit;
}
private static function getFlipCascadeFactors(): array
{
if (!self::$flipCascadeFactors) {
self::$flipCascadeFactors = [];
foreach (self::getCascadeFactors() as $to => [$factor, $from]) {
self::$flipCascadeFactors[self::standardizeUnit($from)] = [self::standardizeUnit($to), $factor];
}
}
return self::$flipCascadeFactors;
}
/**
* @template T of DateInterval
*
* @param DateInterval $interval
*
* @psalm-param class-string $className
*
* @return T
*/
private static function castIntervalToClass(DateInterval $interval, string $className, array $skip = []): object
{
$mainClass = DateInterval::class;
if (!is_a($className, $mainClass, true)) {
throw new InvalidCastException("$className is not a sub-class of $mainClass.");
}
$microseconds = $interval->f;
$instance = new $className(static::getDateIntervalSpec($interval, false, $skip));
if ($instance instanceof self) {
$instance->originalInput = $interval;
}
if ($microseconds) {
$instance->f = $microseconds;
}
if ($interval instanceof self && is_a($className, self::class, true)) {
self::copyStep($interval, $instance);
}
self::copyNegativeUnits($interval, $instance);
return self::withOriginal($instance, $interval);
}
private static function copyStep(self $from, self $to): void
{
$to->setStep($from->getStep());
}
private static function copyNegativeUnits(DateInterval $from, DateInterval $to): void
{
$to->invert = $from->invert;
foreach (['y', 'm', 'd', 'h', 'i', 's'] as $unit) {
if ($from->$unit < 0) {
$to->$unit *= self::NEGATIVE;
}
}
}
private function invertCascade(array $values): static
{
return $this->set(array_map(function ($value) {
return -$value;
}, $values))->doCascade(true)->invert();
}
private function doCascade(bool $deep): static
{
$originalData = $this->toArray();
$originalData['milliseconds'] = (int) ($originalData['microseconds'] / static::getMicrosecondsPerMillisecond());
$originalData['microseconds'] = $originalData['microseconds'] % static::getMicrosecondsPerMillisecond();
$originalData['weeks'] = (int) ($this->d / static::getDaysPerWeek());
$originalData['daysExcludeWeeks'] = fmod($this->d, static::getDaysPerWeek());
unset($originalData['days']);
$newData = $originalData;
$previous = [];
foreach (self::getFlipCascadeFactors() as $source => [$target, $factor]) {
foreach (['source', 'target'] as $key) {
if ($$key === 'dayz') {
$$key = 'daysExcludeWeeks';
}
}
$value = $newData[$source];
$modulo = fmod($factor + fmod($value, $factor), $factor);
$newData[$source] = $modulo;
$newData[$target] += ($value - $modulo) / $factor;
$decimalPart = fmod($newData[$source], 1);
if ($decimalPart !== 0.0) {
$unit = $source;
foreach ($previous as [$subUnit, $subFactor]) {
$newData[$unit] -= $decimalPart;
$newData[$subUnit] += $decimalPart * $subFactor;
$decimalPart = fmod($newData[$subUnit], 1);
if ($decimalPart === 0.0) {
break;
}
$unit = $subUnit;
}
}
array_unshift($previous, [$source, $factor]);
}
$positive = null;
if (!$deep) {
foreach ($newData as $value) {
if ($value) {
if ($positive === null) {
$positive = ($value > 0);
continue;
}
if (($value > 0) !== $positive) {
return $this->invertCascade($originalData)
->solveNegativeInterval();
}
}
}
}
return $this->set($newData)
->solveNegativeInterval();
}
private function needsDeclension(string $mode, int $index, int $parts): bool
{
return match ($mode) {
'last' => $index === $parts - 1,
default => true,
};
}
private function checkIntegerValue(string $name, mixed $value): void
{
if (\is_int($value)) {
return;
}
$this->assertSafeForInteger($name, $value);
if (\is_float($value) && (((float) (int) $value) === $value)) {
return;
}
if (!self::$floatSettersEnabled) {
$type = \gettype($value);
@trigger_error(
"Since 2.70.0, it's deprecated to pass $type value for $name.\n".
"It's truncated when stored as an integer interval unit.\n".
"From 3.0.0, decimal part will no longer be truncated and will be cascaded to smaller units.\n".
"- To maintain the current behavior, use explicit cast: $name((int) \$value)\n".
"- To adopt the new behavior globally, call CarbonInterval::enableFloatSetters()\n",
\E_USER_DEPRECATED,
);
}
}
/**
* Throw an exception if precision loss when storing the given value as an integer would be >= 1.0.
*/
private function assertSafeForInteger(string $name, mixed $value): void
{
if ($value && !\is_int($value) && ($value >= 0x7fffffffffffffff || $value <= -0x7fffffffffffffff)) {
throw new OutOfRangeException($name, -0x7fffffffffffffff, 0x7fffffffffffffff, $value);
}
}
private function handleDecimalPart(string $unit, mixed $value, mixed $integerValue): void
{
if (self::$floatSettersEnabled) {
$floatValue = (float) $value;
$base = (float) $integerValue;
if ($floatValue === $base) {
return;
}
$units = [
'y' => 'year',
'm' => 'month',
'd' => 'day',
'h' => 'hour',
'i' => 'minute',
's' => 'second',
];
$upper = true;
foreach ($units as $property => $name) {
if ($name === $unit) {
$upper = false;
continue;
}
if (!$upper && $this->$property !== 0) {
throw new RuntimeException(
"You cannot set $unit to a float value as $name would be overridden, ".
'set it first to 0 explicitly if you really want to erase its value'
);
}
}
$this->add($unit, $floatValue - $base);
}
}
private function getInnerValues(): array
{
return [$this->y, $this->m, $this->d, $this->h, $this->i, $this->s, $this->f, $this->invert, $this->days];
}
private function checkStartAndEnd(): void
{
if (
$this->initialValues !== null
&& ($this->startDate !== null || $this->endDate !== null)
&& $this->initialValues !== $this->getInnerValues()
) {
$this->absolute = false;
$this->startDate = null;
$this->endDate = null;
$this->rawInterval = null;
}
}
/** @return $this */
private function setSetting(string $setting, mixed $value): self
{
switch ($setting) {
case 'timezoneSetting':
return $value === null ? $this : $this->setTimezone($value);
case 'step':
$this->setStep($value);
return $this;
case 'localMonthsOverflow':
return $value === null ? $this : $this->settings(['monthOverflow' => $value]);
case 'localYearsOverflow':
return $value === null ? $this : $this->settings(['yearOverflow' => $value]);
case 'localStrictModeEnabled':
case 'localHumanDiffOptions':
case 'localToStringFormat':
case 'localSerializer':
case 'localMacros':
case 'localGenericMacros':
case 'localFormatFunction':
case 'localTranslator':
$this->$setting = $value;
return $this;
default:
// Drop unknown settings
return $this;
}
}
}
src/Carbon/CarbonPeriod.php 0000644 00000250231 14753612052 0011627 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Carbon\Exceptions\EndLessPeriodException;
use Carbon\Exceptions\InvalidCastException;
use Carbon\Exceptions\InvalidIntervalException;
use Carbon\Exceptions\InvalidPeriodDateException;
use Carbon\Exceptions\InvalidPeriodParameterException;
use Carbon\Exceptions\NotACarbonClassException;
use Carbon\Exceptions\NotAPeriodException;
use Carbon\Exceptions\UnknownGetterException;
use Carbon\Exceptions\UnknownMethodException;
use Carbon\Exceptions\UnreachableException;
use Carbon\Traits\DeprecatedPeriodProperties;
use Carbon\Traits\IntervalRounding;
use Carbon\Traits\LocalFactory;
use Carbon\Traits\Mixin;
use Carbon\Traits\Options;
use Carbon\Traits\ToStringFormat;
use Closure;
use Countable;
use DateInterval;
use DatePeriod;
use DateTime;
use DateTimeImmutable;
use DateTimeInterface;
use DateTimeZone;
use Generator;
use InvalidArgumentException;
use JsonSerializable;
use ReflectionException;
use ReturnTypeWillChange;
use RuntimeException;
use Throwable;
// @codeCoverageIgnoreStart
require PHP_VERSION < 8.2
? __DIR__.'/../../lazy/Carbon/ProtectedDatePeriod.php'
: __DIR__.'/../../lazy/Carbon/UnprotectedDatePeriod.php';
// @codeCoverageIgnoreEnd
/**
* Substitution of DatePeriod with some modifications and many more features.
*
* @method static static|CarbonInterface start($date = null, $inclusive = null) Create instance specifying start date or modify the start date if called on an instance.
* @method static static since($date = null, $inclusive = null) Alias for start().
* @method static static sinceNow($inclusive = null) Create instance with start date set to now or set the start date to now if called on an instance.
* @method static static|CarbonInterface end($date = null, $inclusive = null) Create instance specifying end date or modify the end date if called on an instance.
* @method static static until($date = null, $inclusive = null) Alias for end().
* @method static static untilNow($inclusive = null) Create instance with end date set to now or set the end date to now if called on an instance.
* @method static static dates($start, $end = null) Create instance with start and end dates or modify the start and end dates if called on an instance.
* @method static static between($start, $end = null) Create instance with start and end dates or modify the start and end dates if called on an instance.
* @method static static recurrences($recurrences = null) Create instance with maximum number of recurrences or modify the number of recurrences if called on an instance.
* @method static static times($recurrences = null) Alias for recurrences().
* @method static static|int|null options($options = null) Create instance with options or modify the options if called on an instance.
* @method static static toggle($options, $state = null) Create instance with options toggled on or off, or toggle options if called on an instance.
* @method static static filter($callback, $name = null) Create instance with filter added to the stack or append a filter if called on an instance.
* @method static static push($callback, $name = null) Alias for filter().
* @method static static prepend($callback, $name = null) Create instance with filter prepended to the stack or prepend a filter if called on an instance.
* @method static static|array filters(array $filters = []) Create instance with filters stack or replace the whole filters stack if called on an instance.
* @method static static|CarbonInterval interval($interval = null) Create instance with given date interval or modify the interval if called on an instance.
* @method static static each($interval) Create instance with given date interval or modify the interval if called on an instance.
* @method static static every($interval) Create instance with given date interval or modify the interval if called on an instance.
* @method static static step($interval) Create instance with given date interval or modify the interval if called on an instance.
* @method static static stepBy($interval) Create instance with given date interval or modify the interval if called on an instance.
* @method static static invert() Create instance with inverted date interval or invert the interval if called on an instance.
* @method static static years($years = 1) Create instance specifying a number of years for date interval or replace the interval by the given a number of years if called on an instance.
* @method static static year($years = 1) Alias for years().
* @method static static months($months = 1) Create instance specifying a number of months for date interval or replace the interval by the given a number of months if called on an instance.
* @method static static month($months = 1) Alias for months().
* @method static static weeks($weeks = 1) Create instance specifying a number of weeks for date interval or replace the interval by the given a number of weeks if called on an instance.
* @method static static week($weeks = 1) Alias for weeks().
* @method static static days($days = 1) Create instance specifying a number of days for date interval or replace the interval by the given a number of days if called on an instance.
* @method static static dayz($days = 1) Alias for days().
* @method static static day($days = 1) Alias for days().
* @method static static hours($hours = 1) Create instance specifying a number of hours for date interval or replace the interval by the given a number of hours if called on an instance.
* @method static static hour($hours = 1) Alias for hours().
* @method static static minutes($minutes = 1) Create instance specifying a number of minutes for date interval or replace the interval by the given a number of minutes if called on an instance.
* @method static static minute($minutes = 1) Alias for minutes().
* @method static static seconds($seconds = 1) Create instance specifying a number of seconds for date interval or replace the interval by the given a number of seconds if called on an instance.
* @method static static second($seconds = 1) Alias for seconds().
* @method static static milliseconds($milliseconds = 1) Create instance specifying a number of milliseconds for date interval or replace the interval by the given a number of milliseconds if called on an instance.
* @method static static millisecond($milliseconds = 1) Alias for milliseconds().
* @method static static microseconds($microseconds = 1) Create instance specifying a number of microseconds for date interval or replace the interval by the given a number of microseconds if called on an instance.
* @method static static microsecond($microseconds = 1) Alias for microseconds().
* @method $this roundYear(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method $this roundYears(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method $this floorYear(float $precision = 1) Truncate the current instance year with given precision.
* @method $this floorYears(float $precision = 1) Truncate the current instance year with given precision.
* @method $this ceilYear(float $precision = 1) Ceil the current instance year with given precision.
* @method $this ceilYears(float $precision = 1) Ceil the current instance year with given precision.
* @method $this roundMonth(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method $this roundMonths(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method $this floorMonth(float $precision = 1) Truncate the current instance month with given precision.
* @method $this floorMonths(float $precision = 1) Truncate the current instance month with given precision.
* @method $this ceilMonth(float $precision = 1) Ceil the current instance month with given precision.
* @method $this ceilMonths(float $precision = 1) Ceil the current instance month with given precision.
* @method $this roundWeek(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this roundWeeks(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this floorWeek(float $precision = 1) Truncate the current instance day with given precision.
* @method $this floorWeeks(float $precision = 1) Truncate the current instance day with given precision.
* @method $this ceilWeek(float $precision = 1) Ceil the current instance day with given precision.
* @method $this ceilWeeks(float $precision = 1) Ceil the current instance day with given precision.
* @method $this roundDay(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this roundDays(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method $this floorDay(float $precision = 1) Truncate the current instance day with given precision.
* @method $this floorDays(float $precision = 1) Truncate the current instance day with given precision.
* @method $this ceilDay(float $precision = 1) Ceil the current instance day with given precision.
* @method $this ceilDays(float $precision = 1) Ceil the current instance day with given precision.
* @method $this roundHour(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method $this roundHours(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method $this floorHour(float $precision = 1) Truncate the current instance hour with given precision.
* @method $this floorHours(float $precision = 1) Truncate the current instance hour with given precision.
* @method $this ceilHour(float $precision = 1) Ceil the current instance hour with given precision.
* @method $this ceilHours(float $precision = 1) Ceil the current instance hour with given precision.
* @method $this roundMinute(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method $this roundMinutes(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method $this floorMinute(float $precision = 1) Truncate the current instance minute with given precision.
* @method $this floorMinutes(float $precision = 1) Truncate the current instance minute with given precision.
* @method $this ceilMinute(float $precision = 1) Ceil the current instance minute with given precision.
* @method $this ceilMinutes(float $precision = 1) Ceil the current instance minute with given precision.
* @method $this roundSecond(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method $this roundSeconds(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method $this floorSecond(float $precision = 1) Truncate the current instance second with given precision.
* @method $this floorSeconds(float $precision = 1) Truncate the current instance second with given precision.
* @method $this ceilSecond(float $precision = 1) Ceil the current instance second with given precision.
* @method $this ceilSeconds(float $precision = 1) Ceil the current instance second with given precision.
* @method $this roundMillennium(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method $this roundMillennia(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method $this floorMillennium(float $precision = 1) Truncate the current instance millennium with given precision.
* @method $this floorMillennia(float $precision = 1) Truncate the current instance millennium with given precision.
* @method $this ceilMillennium(float $precision = 1) Ceil the current instance millennium with given precision.
* @method $this ceilMillennia(float $precision = 1) Ceil the current instance millennium with given precision.
* @method $this roundCentury(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method $this roundCenturies(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method $this floorCentury(float $precision = 1) Truncate the current instance century with given precision.
* @method $this floorCenturies(float $precision = 1) Truncate the current instance century with given precision.
* @method $this ceilCentury(float $precision = 1) Ceil the current instance century with given precision.
* @method $this ceilCenturies(float $precision = 1) Ceil the current instance century with given precision.
* @method $this roundDecade(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method $this roundDecades(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method $this floorDecade(float $precision = 1) Truncate the current instance decade with given precision.
* @method $this floorDecades(float $precision = 1) Truncate the current instance decade with given precision.
* @method $this ceilDecade(float $precision = 1) Ceil the current instance decade with given precision.
* @method $this ceilDecades(float $precision = 1) Ceil the current instance decade with given precision.
* @method $this roundQuarter(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method $this roundQuarters(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method $this floorQuarter(float $precision = 1) Truncate the current instance quarter with given precision.
* @method $this floorQuarters(float $precision = 1) Truncate the current instance quarter with given precision.
* @method $this ceilQuarter(float $precision = 1) Ceil the current instance quarter with given precision.
* @method $this ceilQuarters(float $precision = 1) Ceil the current instance quarter with given precision.
* @method $this roundMillisecond(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method $this roundMilliseconds(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method $this floorMillisecond(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method $this floorMilliseconds(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method $this ceilMillisecond(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method $this ceilMilliseconds(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method $this roundMicrosecond(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method $this roundMicroseconds(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method $this floorMicrosecond(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method $this floorMicroseconds(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method $this ceilMicrosecond(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method $this ceilMicroseconds(float $precision = 1) Ceil the current instance microsecond with given precision.
*
* @mixin DeprecatedPeriodProperties
*
* @SuppressWarnings(PHPMD.TooManyFields)
* @SuppressWarnings(PHPMD.CamelCasePropertyName)
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
*/
class CarbonPeriod extends DatePeriodBase implements Countable, JsonSerializable
{
use LocalFactory;
use IntervalRounding;
use Mixin {
Mixin::mixin as baseMixin;
}
use Options {
Options::__debugInfo as baseDebugInfo;
}
use ToStringFormat;
/**
* Built-in filter for limit by recurrences.
*
* @var callable
*/
public const RECURRENCES_FILTER = [self::class, 'filterRecurrences'];
/**
* Built-in filter for limit to an end.
*
* @var callable
*/
public const END_DATE_FILTER = [self::class, 'filterEndDate'];
/**
* Special value which can be returned by filters to end iteration. Also a filter.
*
* @var callable
*/
public const END_ITERATION = [self::class, 'endIteration'];
/**
* Exclude end date from iteration.
*
* @var int
*/
public const EXCLUDE_END_DATE = 8;
/**
* Yield CarbonImmutable instances.
*
* @var int
*/
public const IMMUTABLE = 4;
/**
* Number of maximum attempts before giving up on finding next valid date.
*
* @var int
*/
public const NEXT_MAX_ATTEMPTS = 1000;
/**
* Number of maximum attempts before giving up on finding end date.
*
* @var int
*/
public const END_MAX_ATTEMPTS = 10000;
/**
* Default date class of iteration items.
*
* @var string
*/
protected const DEFAULT_DATE_CLASS = Carbon::class;
/**
* The registered macros.
*/
protected static array $macros = [];
/**
* Date class of iteration items.
*/
protected string $dateClass = Carbon::class;
/**
* Underlying date interval instance. Always present, one day by default.
*/
protected ?CarbonInterval $dateInterval = null;
/**
* True once __construct is finished.
*/
protected bool $constructed = false;
/**
* Whether current date interval was set by default.
*/
protected bool $isDefaultInterval = false;
/**
* The filters stack.
*/
protected array $filters = [];
/**
* Period start date. Applied on rewind. Always present, now by default.
*/
protected ?CarbonInterface $startDate = null;
/**
* Period end date. For inverted interval should be before the start date. Applied via a filter.
*/
protected ?CarbonInterface $endDate = null;
/**
* Limit for number of recurrences. Applied via a filter.
*/
protected int|float|null $carbonRecurrences = null;
/**
* Iteration options.
*/
protected ?int $options = null;
/**
* Index of current date. Always sequential, even if some dates are skipped by filters.
* Equal to null only before the first iteration.
*/
protected int $key = 0;
/**
* Current date. May temporarily hold unaccepted value when looking for a next valid date.
* Equal to null only before the first iteration.
*/
protected ?CarbonInterface $carbonCurrent = null;
/**
* Timezone of current date. Taken from the start date.
*/
protected ?DateTimeZone $timezone = null;
/**
* The cached validation result for current date.
*/
protected array|string|bool|null $validationResult = null;
/**
* Timezone handler for settings() method.
*/
protected DateTimeZone|string|int|null $timezoneSetting = null;
public function getIterator(): Generator
{
$this->rewind();
while ($this->valid()) {
$key = $this->key();
$value = $this->current();
yield $key => $value;
$this->next();
}
}
/**
* Make a CarbonPeriod instance from given variable if possible.
*/
public static function make(mixed $var): ?static
{
try {
return static::instance($var);
} catch (NotAPeriodException) {
return static::create($var);
}
}
/**
* Create a new instance from a DatePeriod or CarbonPeriod object.
*/
public static function instance(mixed $period): static
{
if ($period instanceof static) {
return $period->copy();
}
if ($period instanceof self) {
return new static(
$period->getStartDate(),
$period->getEndDate() ?? $period->getRecurrences(),
$period->getDateInterval(),
$period->getOptions(),
);
}
if ($period instanceof DatePeriod) {
return new static(
$period->start,
$period->end ?: ($period->recurrences - 1),
$period->interval,
$period->include_start_date ? 0 : static::EXCLUDE_START_DATE,
);
}
$class = static::class;
$type = \gettype($period);
$chunks = explode('::', __METHOD__);
throw new NotAPeriodException(
'Argument 1 passed to '.$class.'::'.end($chunks).'() '.
'must be an instance of DatePeriod or '.$class.', '.
($type === 'object' ? 'instance of '.\get_class($period) : $type).' given.',
);
}
/**
* Create a new instance.
*/
public static function create(...$params): static
{
return static::createFromArray($params);
}
/**
* Create a new instance from an array of parameters.
*/
public static function createFromArray(array $params): static
{
return new static(...$params);
}
/**
* Create CarbonPeriod from ISO 8601 string.
*/
public static function createFromIso(string $iso, ?int $options = null): static
{
$params = static::parseIso8601($iso);
$instance = static::createFromArray($params);
if ($options !== null) {
$instance->options = $options;
$instance->handleChangedParameters();
}
return $instance;
}
/**
* Return whether given interval contains non zero value of any time unit.
*/
protected static function intervalHasTime(DateInterval $interval): bool
{
return $interval->h || $interval->i || $interval->s || $interval->f;
}
/**
* Return whether given variable is an ISO 8601 specification.
*
* Note: Check is very basic, as actual validation will be done later when parsing.
* We just want to ensure that variable is not any other type of valid parameter.
*/
protected static function isIso8601(mixed $var): bool
{
if (!\is_string($var)) {
return false;
}
// Match slash but not within a timezone name.
$part = '[a-z]+(?:[_-][a-z]+)*';
preg_match("#\b$part/$part\b|(/)#i", $var, $match);
return isset($match[1]);
}
/**
* Parse given ISO 8601 string into an array of arguments.
*
* @SuppressWarnings(PHPMD.ElseExpression)
*/
protected static function parseIso8601(string $iso): array
{
$result = [];
$interval = null;
$start = null;
$end = null;
$dateClass = static::DEFAULT_DATE_CLASS;
foreach (explode('/', $iso) as $key => $part) {
if ($key === 0 && preg_match('/^R(\d*|INF)$/', $part, $match)) {
$parsed = \strlen($match[1]) ? (($match[1] !== 'INF') ? (int) $match[1] : INF) : null;
} elseif ($interval === null && $parsed = self::makeInterval($part)) {
$interval = $part;
} elseif ($start === null && $parsed = $dateClass::make($part)) {
$start = $part;
} elseif ($end === null && $parsed = $dateClass::make(static::addMissingParts($start ?? '', $part))) {
$end = $part;
} else {
throw new InvalidPeriodParameterException("Invalid ISO 8601 specification: $iso.");
}
$result[] = $parsed;
}
return $result;
}
/**
* Add missing parts of the target date from the source date.
*/
protected static function addMissingParts(string $source, string $target): string
{
$pattern = '/'.preg_replace('/\d+/', '[0-9]+', preg_quote($target, '/')).'$/';
$result = preg_replace($pattern, $target, $source, 1, $count);
return $count ? $result : $target;
}
private static function makeInterval(mixed $input): ?CarbonInterval
{
try {
return CarbonInterval::make($input);
} catch (Throwable) {
return null;
}
}
private static function makeTimezone(mixed $input): ?CarbonTimeZone
{
if (!\is_string($input)) {
return null;
}
try {
return CarbonTimeZone::create($input);
} catch (Throwable) {
return null;
}
}
/**
* Register a custom macro.
*
* Pass null macro to remove it.
*
* @example
* ```
* CarbonPeriod::macro('middle', function () {
* return $this->getStartDate()->average($this->getEndDate());
* });
* echo CarbonPeriod::since('2011-05-12')->until('2011-06-03')->middle();
* ```
*/
public static function macro(string $name, ?callable $macro): void
{
static::$macros[$name] = $macro;
}
/**
* Register macros from a mixin object.
*
* @example
* ```
* CarbonPeriod::mixin(new class {
* public function addDays() {
* return function ($count = 1) {
* return $this->setStartDate(
* $this->getStartDate()->addDays($count)
* )->setEndDate(
* $this->getEndDate()->addDays($count)
* );
* };
* }
* public function subDays() {
* return function ($count = 1) {
* return $this->setStartDate(
* $this->getStartDate()->subDays($count)
* )->setEndDate(
* $this->getEndDate()->subDays($count)
* );
* };
* }
* });
* echo CarbonPeriod::create('2000-01-01', '2000-02-01')->addDays(5)->subDays(3);
* ```
*
* @throws ReflectionException
*/
public static function mixin(object|string $mixin): void
{
static::baseMixin($mixin);
}
/**
* Check if macro is registered.
*/
public static function hasMacro(string $name): bool
{
return isset(static::$macros[$name]);
}
/**
* Provide static proxy for instance aliases.
*/
public static function __callStatic(string $method, array $parameters): mixed
{
$date = new static();
if (static::hasMacro($method)) {
return static::bindMacroContext(null, static fn () => $date->callMacro($method, $parameters));
}
return $date->$method(...$parameters);
}
/**
* CarbonPeriod constructor.
*
* @SuppressWarnings(PHPMD.ElseExpression)
*
* @throws InvalidArgumentException
*/
public function __construct(...$arguments)
{
$raw = null;
if (isset($arguments['raw'])) {
$raw = $arguments['raw'];
$this->isDefaultInterval = $arguments['isDefaultInterval'] ?? false;
if (isset($arguments['dateClass'])) {
$this->dateClass = $arguments['dateClass'];
}
$arguments = $raw;
}
// Parse and assign arguments one by one. First argument may be an ISO 8601 spec,
// which will be first parsed into parts and then processed the same way.
$argumentsCount = \count($arguments);
if ($argumentsCount && static::isIso8601($iso = $arguments[0])) {
array_splice($arguments, 0, 1, static::parseIso8601($iso));
}
if ($argumentsCount === 1) {
if ($arguments[0] instanceof self) {
$arguments = [
$arguments[0]->getStartDate(),
$arguments[0]->getEndDate() ?? $arguments[0]->getRecurrences(),
$arguments[0]->getDateInterval(),
$arguments[0]->getOptions(),
];
} elseif ($arguments[0] instanceof DatePeriod) {
$arguments = [
$arguments[0]->start,
$arguments[0]->end ?: ($arguments[0]->recurrences - 1),
$arguments[0]->interval,
$arguments[0]->include_start_date ? 0 : static::EXCLUDE_START_DATE,
];
}
}
if (is_a($this->dateClass, DateTimeImmutable::class, true)) {
$this->options = static::IMMUTABLE;
}
$optionsSet = false;
$originalArguments = [];
$sortedArguments = [];
foreach ($arguments as $argument) {
$parsedDate = null;
if ($argument instanceof DateTimeZone) {
$sortedArguments = $this->configureTimezone($argument, $sortedArguments, $originalArguments);
} elseif (!isset($sortedArguments['interval']) &&
(
(\is_string($argument) && preg_match(
'/^(-?\d(\d(?![\/-])|[^\d\/-]([\/-])?)*|P[T\d].*|(?:\h*\d+(?:\.\d+)?\h*[a-z]+)+)$/i',
$argument,
)) ||
$argument instanceof DateInterval ||
$argument instanceof Closure ||
$argument instanceof Unit
) &&
$parsedInterval = self::makeInterval($argument)
) {
$sortedArguments['interval'] = $parsedInterval;
} elseif (!isset($sortedArguments['start']) && $parsedDate = $this->makeDateTime($argument)) {
$sortedArguments['start'] = $parsedDate;
$originalArguments['start'] = $argument;
} elseif (!isset($sortedArguments['end']) && ($parsedDate = $parsedDate ?? $this->makeDateTime($argument))) {
$sortedArguments['end'] = $parsedDate;
$originalArguments['end'] = $argument;
} elseif (!isset($sortedArguments['recurrences']) &&
!isset($sortedArguments['end']) &&
(\is_int($argument) || \is_float($argument))
&& $argument >= 0
) {
$sortedArguments['recurrences'] = $argument;
} elseif (!$optionsSet && (\is_int($argument) || $argument === null)) {
$optionsSet = true;
$sortedArguments['options'] = (((int) $this->options) | ((int) $argument));
} elseif ($parsedTimezone = self::makeTimezone($argument)) {
$sortedArguments = $this->configureTimezone($parsedTimezone, $sortedArguments, $originalArguments);
} else {
throw new InvalidPeriodParameterException('Invalid constructor parameters.');
}
}
if ($raw === null && isset($sortedArguments['start'])) {
$end = $sortedArguments['end'] ?? max(1, $sortedArguments['recurrences'] ?? 1);
if (\is_float($end)) {
$end = $end === INF ? PHP_INT_MAX : (int) round($end);
}
$raw = [
$sortedArguments['start'],
$sortedArguments['interval'] ?? CarbonInterval::day(),
$end,
];
}
$this->setFromAssociativeArray($sortedArguments);
if ($this->startDate === null) {
$dateClass = $this->dateClass;
$this->setStartDate($dateClass::now());
}
if ($this->dateInterval === null) {
$this->setDateInterval(CarbonInterval::day());
$this->isDefaultInterval = true;
}
if ($this->options === null) {
$this->setOptions(0);
}
parent::__construct(
$this->startDate,
$this->dateInterval,
$this->endDate ?? $this->recurrences ?? 1,
$this->options,
);
$this->constructed = true;
}
/**
* Get a copy of the instance.
*/
public function copy(): static
{
return clone $this;
}
/**
* Prepare the instance to be set (self if mutable to be mutated,
* copy if immutable to generate a new instance).
*/
protected function copyIfImmutable(): static
{
return $this;
}
/**
* Get the getter for a property allowing both `DatePeriod` snakeCase and camelCase names.
*/
protected function getGetter(string $name): ?callable
{
return match (strtolower(preg_replace('/[A-Z]/', '_$0', $name))) {
'start', 'start_date' => [$this, 'getStartDate'],
'end', 'end_date' => [$this, 'getEndDate'],
'interval', 'date_interval' => [$this, 'getDateInterval'],
'recurrences' => [$this, 'getRecurrences'],
'include_start_date' => [$this, 'isStartIncluded'],
'include_end_date' => [$this, 'isEndIncluded'],
'current' => [$this, 'current'],
'locale' => [$this, 'locale'],
'tzname', 'tz_name' => fn () => match (true) {
$this->timezoneSetting === null => null,
\is_string($this->timezoneSetting) => $this->timezoneSetting,
$this->timezoneSetting instanceof DateTimeZone => $this->timezoneSetting->getName(),
default => CarbonTimeZone::instance($this->timezoneSetting)->getName(),
},
default => null,
};
}
/**
* Get a property allowing both `DatePeriod` snakeCase and camelCase names.
*
* @param string $name
*
* @return bool|CarbonInterface|CarbonInterval|int|null
*/
public function get(string $name)
{
$getter = $this->getGetter($name);
if ($getter) {
return $getter();
}
throw new UnknownGetterException($name);
}
/**
* Get a property allowing both `DatePeriod` snakeCase and camelCase names.
*
* @param string $name
*
* @return bool|CarbonInterface|CarbonInterval|int|null
*/
public function __get(string $name)
{
return $this->get($name);
}
/**
* Check if an attribute exists on the object
*
* @param string $name
*
* @return bool
*/
public function __isset(string $name): bool
{
return $this->getGetter($name) !== null;
}
/**
* @alias copy
*
* Get a copy of the instance.
*
* @return static
*/
public function clone()
{
return clone $this;
}
/**
* Set the iteration item class.
*
* @param string $dateClass
*
* @return static
*/
public function setDateClass(string $dateClass)
{
if (!is_a($dateClass, CarbonInterface::class, true)) {
throw new NotACarbonClassException($dateClass);
}
$self = $this->copyIfImmutable();
$self->dateClass = $dateClass;
if (is_a($dateClass, Carbon::class, true)) {
$self->options = $self->options & ~static::IMMUTABLE;
} elseif (is_a($dateClass, CarbonImmutable::class, true)) {
$self->options = $self->options | static::IMMUTABLE;
}
return $self;
}
/**
* Returns iteration item date class.
*
* @return string
*/
public function getDateClass(): string
{
return $this->dateClass;
}
/**
* Change the period date interval.
*
* @param DateInterval|string|int $interval
* @param Unit|string $unit the unit of $interval if it's a number
*
* @throws InvalidIntervalException
*
* @return static
*/
public function setDateInterval(mixed $interval, Unit|string|null $unit = null): static
{
if ($interval instanceof Unit) {
$interval = $interval->interval();
}
if ($unit instanceof Unit) {
$unit = $unit->name;
}
if (!$interval = CarbonInterval::make($interval, $unit)) {
throw new InvalidIntervalException('Invalid interval.');
}
if ($interval->spec() === 'PT0S' && !$interval->f && !$interval->getStep()) {
throw new InvalidIntervalException('Empty interval is not accepted.');
}
$self = $this->copyIfImmutable();
$self->dateInterval = $interval;
$self->isDefaultInterval = false;
$self->handleChangedParameters();
return $self;
}
/**
* Reset the date interval to the default value.
*
* Difference with simply setting interval to 1-day is that P1D will not appear when calling toIso8601String()
* and also next adding to the interval won't include the default 1-day.
*/
public function resetDateInterval(): static
{
$self = $this->copyIfImmutable();
$self->setDateInterval(CarbonInterval::day());
$self->isDefaultInterval = true;
return $self;
}
/**
* Invert the period date interval.
*/
public function invertDateInterval(): static
{
return $this->setDateInterval($this->dateInterval->invert());
}
/**
* Set start and end date.
*
* @param DateTime|DateTimeInterface|string $start
* @param DateTime|DateTimeInterface|string|null $end
*
* @return static
*/
public function setDates(mixed $start, mixed $end): static
{
return $this->setStartDate($start)->setEndDate($end);
}
/**
* Change the period options.
*
* @param int|null $options
*
* @return static
*/
public function setOptions(?int $options): static
{
$self = $this->copyIfImmutable();
$self->options = $options ?? 0;
$self->handleChangedParameters();
return $self;
}
/**
* Get the period options.
*/
public function getOptions(): int
{
return $this->options ?? 0;
}
/**
* Toggle given options on or off.
*
* @param int $options
* @param bool|null $state
*
* @throws InvalidArgumentException
*
* @return static
*/
public function toggleOptions(int $options, ?bool $state = null): static
{
$self = $this->copyIfImmutable();
if ($state === null) {
$state = ($this->options & $options) !== $options;
}
return $self->setOptions(
$state ?
$this->options | $options :
$this->options & ~$options,
);
}
/**
* Toggle EXCLUDE_START_DATE option.
*/
public function excludeStartDate(bool $state = true): static
{
return $this->toggleOptions(static::EXCLUDE_START_DATE, $state);
}
/**
* Toggle EXCLUDE_END_DATE option.
*/
public function excludeEndDate(bool $state = true): static
{
return $this->toggleOptions(static::EXCLUDE_END_DATE, $state);
}
/**
* Get the underlying date interval.
*/
public function getDateInterval(): CarbonInterval
{
return $this->dateInterval->copy();
}
/**
* Get start date of the period.
*
* @param string|null $rounding Optional rounding 'floor', 'ceil', 'round' using the period interval.
*/
public function getStartDate(?string $rounding = null): CarbonInterface
{
$date = $this->startDate->avoidMutation();
return $rounding ? $date->round($this->getDateInterval(), $rounding) : $date;
}
/**
* Get end date of the period.
*
* @param string|null $rounding Optional rounding 'floor', 'ceil', 'round' using the period interval.
*/
public function getEndDate(?string $rounding = null): ?CarbonInterface
{
if (!$this->endDate) {
return null;
}
$date = $this->endDate->avoidMutation();
return $rounding ? $date->round($this->getDateInterval(), $rounding) : $date;
}
/**
* Get number of recurrences.
*/
#[ReturnTypeWillChange]
public function getRecurrences(): int|float|null
{
return $this->carbonRecurrences;
}
/**
* Returns true if the start date should be excluded.
*/
public function isStartExcluded(): bool
{
return ($this->options & static::EXCLUDE_START_DATE) !== 0;
}
/**
* Returns true if the end date should be excluded.
*/
public function isEndExcluded(): bool
{
return ($this->options & static::EXCLUDE_END_DATE) !== 0;
}
/**
* Returns true if the start date should be included.
*/
public function isStartIncluded(): bool
{
return !$this->isStartExcluded();
}
/**
* Returns true if the end date should be included.
*/
public function isEndIncluded(): bool
{
return !$this->isEndExcluded();
}
/**
* Return the start if it's included by option, else return the start + 1 period interval.
*/
public function getIncludedStartDate(): CarbonInterface
{
$start = $this->getStartDate();
if ($this->isStartExcluded()) {
return $start->add($this->getDateInterval());
}
return $start;
}
/**
* Return the end if it's included by option, else return the end - 1 period interval.
* Warning: if the period has no fixed end, this method will iterate the period to calculate it.
*/
public function getIncludedEndDate(): CarbonInterface
{
$end = $this->getEndDate();
if (!$end) {
return $this->calculateEnd();
}
if ($this->isEndExcluded()) {
return $end->sub($this->getDateInterval());
}
return $end;
}
/**
* Add a filter to the stack.
*
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function addFilter(callable|string $callback, ?string $name = null): static
{
$self = $this->copyIfImmutable();
$tuple = $self->createFilterTuple(\func_get_args());
$self->filters[] = $tuple;
$self->handleChangedParameters();
return $self;
}
/**
* Prepend a filter to the stack.
*
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
public function prependFilter(callable|string $callback, ?string $name = null): static
{
$self = $this->copyIfImmutable();
$tuple = $self->createFilterTuple(\func_get_args());
array_unshift($self->filters, $tuple);
$self->handleChangedParameters();
return $self;
}
/**
* Remove a filter by instance or name.
*/
public function removeFilter(callable|string $filter): static
{
$self = $this->copyIfImmutable();
$key = \is_callable($filter) ? 0 : 1;
$self->filters = array_values(array_filter(
$this->filters,
static fn ($tuple) => $tuple[$key] !== $filter,
));
$self->updateInternalState();
$self->handleChangedParameters();
return $self;
}
/**
* Return whether given instance or name is in the filter stack.
*/
public function hasFilter(callable|string $filter): bool
{
$key = \is_callable($filter) ? 0 : 1;
foreach ($this->filters as $tuple) {
if ($tuple[$key] === $filter) {
return true;
}
}
return false;
}
/**
* Get filters stack.
*/
public function getFilters(): array
{
return $this->filters;
}
/**
* Set filters stack.
*/
public function setFilters(array $filters): static
{
$self = $this->copyIfImmutable();
$self->filters = $filters;
$self->updateInternalState();
$self->handleChangedParameters();
return $self;
}
/**
* Reset filters stack.
*/
public function resetFilters(): static
{
$self = $this->copyIfImmutable();
$self->filters = [];
if ($self->endDate !== null) {
$self->filters[] = [static::END_DATE_FILTER, null];
}
if ($self->carbonRecurrences !== null) {
$self->filters[] = [static::RECURRENCES_FILTER, null];
}
$self->handleChangedParameters();
return $self;
}
/**
* Add a recurrences filter (set maximum number of recurrences).
*
* @throws InvalidArgumentException
*/
public function setRecurrences(int|float|null $recurrences): static
{
if ($recurrences === null) {
return $this->removeFilter(static::RECURRENCES_FILTER);
}
if ($recurrences < 0) {
throw new InvalidPeriodParameterException('Invalid number of recurrences.');
}
/** @var self $self */
$self = $this->copyIfImmutable();
$self->carbonRecurrences = $recurrences === INF ? INF : (int) $recurrences;
if (!$self->hasFilter(static::RECURRENCES_FILTER)) {
return $self->addFilter(static::RECURRENCES_FILTER);
}
$self->handleChangedParameters();
return $self;
}
/**
* Change the period start date.
*
* @param DateTime|DateTimeInterface|string $date
* @param bool|null $inclusive
*
* @throws InvalidPeriodDateException
*
* @return static
*/
public function setStartDate(mixed $date, ?bool $inclusive = null): static
{
if (!$this->isInfiniteDate($date) && !($date = ([$this->dateClass, 'make'])($date, $this->timezone))) {
throw new InvalidPeriodDateException('Invalid start date.');
}
$self = $this->copyIfImmutable();
$self->startDate = $date;
if ($inclusive !== null) {
$self = $self->toggleOptions(static::EXCLUDE_START_DATE, !$inclusive);
}
return $self;
}
/**
* Change the period end date.
*
* @param DateTime|DateTimeInterface|string|null $date
* @param bool|null $inclusive
*
* @throws \InvalidArgumentException
*
* @return static
*/
public function setEndDate(mixed $date, ?bool $inclusive = null): static
{
if ($date !== null && !$this->isInfiniteDate($date) && !$date = ([$this->dateClass, 'make'])($date, $this->timezone)) {
throw new InvalidPeriodDateException('Invalid end date.');
}
if (!$date) {
return $this->removeFilter(static::END_DATE_FILTER);
}
$self = $this->copyIfImmutable();
$self->endDate = $date;
if ($inclusive !== null) {
$self = $self->toggleOptions(static::EXCLUDE_END_DATE, !$inclusive);
}
if (!$self->hasFilter(static::END_DATE_FILTER)) {
return $self->addFilter(static::END_DATE_FILTER);
}
$self->handleChangedParameters();
return $self;
}
/**
* Check if the current position is valid.
*/
public function valid(): bool
{
return $this->validateCurrentDate() === true;
}
/**
* Return the current key.
*/
public function key(): ?int
{
return $this->valid()
? $this->key
: null;
}
/**
* Return the current date.
*/
public function current(): ?CarbonInterface
{
return $this->valid()
? $this->prepareForReturn($this->carbonCurrent)
: null;
}
/**
* Move forward to the next date.
*
* @throws RuntimeException
*/
public function next(): void
{
if ($this->carbonCurrent === null) {
$this->rewind();
}
if ($this->validationResult !== static::END_ITERATION) {
$this->key++;
$this->incrementCurrentDateUntilValid();
}
}
/**
* Rewind to the start date.
*
* Iterating over a date in the UTC timezone avoids bug during backward DST change.
*
* @see https://bugs.php.net/bug.php?id=72255
* @see https://bugs.php.net/bug.php?id=74274
* @see https://wiki.php.net/rfc/datetime_and_daylight_saving_time
*
* @throws RuntimeException
*/
public function rewind(): void
{
$this->key = 0;
$this->carbonCurrent = ([$this->dateClass, 'make'])($this->startDate);
$settings = $this->getSettings();
if ($this->hasLocalTranslator()) {
$settings['locale'] = $this->getTranslatorLocale();
}
$this->carbonCurrent->settings($settings);
$this->timezone = static::intervalHasTime($this->dateInterval) ? $this->carbonCurrent->getTimezone() : null;
if ($this->timezone) {
$this->carbonCurrent = $this->carbonCurrent->utc();
}
$this->validationResult = null;
if ($this->isStartExcluded() || $this->validateCurrentDate() === false) {
$this->incrementCurrentDateUntilValid();
}
}
/**
* Skip iterations and returns iteration state (false if ended, true if still valid).
*
* @param int $count steps number to skip (1 by default)
*
* @return bool
*/
public function skip(int $count = 1): bool
{
for ($i = $count; $this->valid() && $i > 0; $i--) {
$this->next();
}
return $this->valid();
}
/**
* Format the date period as ISO 8601.
*/
public function toIso8601String(): string
{
$parts = [];
if ($this->carbonRecurrences !== null) {
$parts[] = 'R'.$this->carbonRecurrences;
}
$parts[] = $this->startDate->toIso8601String();
if (!$this->isDefaultInterval) {
$parts[] = $this->dateInterval->spec();
}
if ($this->endDate !== null) {
$parts[] = $this->endDate->toIso8601String();
}
return implode('/', $parts);
}
/**
* Convert the date period into a string.
*/
public function toString(): string
{
$format = $this->localToStringFormat
?? $this->getFactory()->getSettings()['toStringFormat']
?? null;
if ($format instanceof Closure) {
return $format($this);
}
$translator = ([$this->dateClass, 'getTranslator'])();
$parts = [];
$format = $format ?? (
!$this->startDate->isStartOfDay() || ($this->endDate && !$this->endDate->isStartOfDay())
? 'Y-m-d H:i:s'
: 'Y-m-d'
);
if ($this->carbonRecurrences !== null) {
$parts[] = $this->translate('period_recurrences', [], $this->carbonRecurrences, $translator);
}
$parts[] = $this->translate('period_interval', [':interval' => $this->dateInterval->forHumans([
'join' => true,
])], null, $translator);
$parts[] = $this->translate('period_start_date', [':date' => $this->startDate->rawFormat($format)], null, $translator);
if ($this->endDate !== null) {
$parts[] = $this->translate('period_end_date', [':date' => $this->endDate->rawFormat($format)], null, $translator);
}
$result = implode(' ', $parts);
return mb_strtoupper(mb_substr($result, 0, 1)).mb_substr($result, 1);
}
/**
* Format the date period as ISO 8601.
*/
public function spec(): string
{
return $this->toIso8601String();
}
/**
* Cast the current instance into the given class.
*
* @param string $className The $className::instance() method will be called to cast the current object.
*
* @return DatePeriod|object
*/
public function cast(string $className): object
{
if (!method_exists($className, 'instance')) {
if (is_a($className, DatePeriod::class, true)) {
return new $className(
$this->rawDate($this->getStartDate()),
$this->getDateInterval(),
$this->getEndDate() ? $this->rawDate($this->getIncludedEndDate()) : $this->getRecurrences(),
$this->isStartExcluded() ? DatePeriod::EXCLUDE_START_DATE : 0,
);
}
throw new InvalidCastException("$className has not the instance() method needed to cast the date.");
}
return $className::instance($this);
}
/**
* Return native DatePeriod PHP object matching the current instance.
*
* @example
* ```
* var_dump(CarbonPeriod::create('2021-01-05', '2021-02-15')->toDatePeriod());
* ```
*/
public function toDatePeriod(): DatePeriod
{
return $this->cast(DatePeriod::class);
}
/**
* Return `true` if the period has no custom filter and is guaranteed to be endless.
*
* Note that we can't check if a period is endless as soon as it has custom filters
* because filters can emit `CarbonPeriod::END_ITERATION` to stop the iteration in
* a way we can't predict without actually iterating the period.
*/
public function isUnfilteredAndEndLess(): bool
{
foreach ($this->filters as $filter) {
switch ($filter) {
case [static::RECURRENCES_FILTER, null]:
if ($this->carbonRecurrences !== null && is_finite($this->carbonRecurrences)) {
return false;
}
break;
case [static::END_DATE_FILTER, null]:
if ($this->endDate !== null && !$this->endDate->isEndOfTime()) {
return false;
}
break;
default:
return false;
}
}
return true;
}
/**
* Convert the date period into an array without changing current iteration state.
*
* @return CarbonInterface[]
*/
public function toArray(): array
{
if ($this->isUnfilteredAndEndLess()) {
throw new EndLessPeriodException("Endless period can't be converted to array nor counted.");
}
$state = [
$this->key,
$this->carbonCurrent ? $this->carbonCurrent->avoidMutation() : null,
$this->validationResult,
];
$result = iterator_to_array($this);
[$this->key, $this->carbonCurrent, $this->validationResult] = $state;
return $result;
}
/**
* Count dates in the date period.
*/
public function count(): int
{
return \count($this->toArray());
}
/**
* Return the first date in the date period.
*/
public function first(): ?CarbonInterface
{
if ($this->isUnfilteredAndEndLess()) {
foreach ($this as $date) {
$this->rewind();
return $date;
}
return null;
}
return ($this->toArray() ?: [])[0] ?? null;
}
/**
* Return the last date in the date period.
*/
public function last(): ?CarbonInterface
{
$array = $this->toArray();
return $array ? $array[\count($array) - 1] : null;
}
/**
* Convert the date period into a string.
*/
public function __toString(): string
{
return $this->toString();
}
/**
* Add aliases for setters.
*
* CarbonPeriod::days(3)->hours(5)->invert()
* ->sinceNow()->until('2010-01-10')
* ->filter(...)
* ->count()
*
* Note: We use magic method to let static and instance aliases with the same names.
*/
public function __call(string $method, array $parameters): mixed
{
if (static::hasMacro($method)) {
return static::bindMacroContext($this, fn () => $this->callMacro($method, $parameters));
}
$roundedValue = $this->callRoundMethod($method, $parameters);
if ($roundedValue !== null) {
return $roundedValue;
}
$count = \count($parameters);
switch ($method) {
case 'start':
case 'since':
if ($count === 0) {
return $this->getStartDate();
}
self::setDefaultParameters($parameters, [
[0, 'date', null],
]);
return $this->setStartDate(...$parameters);
case 'sinceNow':
return $this->setStartDate(new Carbon(), ...$parameters);
case 'end':
case 'until':
if ($count === 0) {
return $this->getEndDate();
}
self::setDefaultParameters($parameters, [
[0, 'date', null],
]);
return $this->setEndDate(...$parameters);
case 'untilNow':
return $this->setEndDate(new Carbon(), ...$parameters);
case 'dates':
case 'between':
self::setDefaultParameters($parameters, [
[0, 'start', null],
[1, 'end', null],
]);
return $this->setDates(...$parameters);
case 'recurrences':
case 'times':
if ($count === 0) {
return $this->getRecurrences();
}
self::setDefaultParameters($parameters, [
[0, 'recurrences', null],
]);
return $this->setRecurrences(...$parameters);
case 'options':
if ($count === 0) {
return $this->getOptions();
}
self::setDefaultParameters($parameters, [
[0, 'options', null],
]);
return $this->setOptions(...$parameters);
case 'toggle':
self::setDefaultParameters($parameters, [
[0, 'options', null],
]);
return $this->toggleOptions(...$parameters);
case 'filter':
case 'push':
return $this->addFilter(...$parameters);
case 'prepend':
return $this->prependFilter(...$parameters);
case 'filters':
if ($count === 0) {
return $this->getFilters();
}
self::setDefaultParameters($parameters, [
[0, 'filters', []],
]);
return $this->setFilters(...$parameters);
case 'interval':
case 'each':
case 'every':
case 'step':
case 'stepBy':
if ($count === 0) {
return $this->getDateInterval();
}
return $this->setDateInterval(...$parameters);
case 'invert':
return $this->invertDateInterval();
case 'years':
case 'year':
case 'months':
case 'month':
case 'weeks':
case 'week':
case 'days':
case 'dayz':
case 'day':
case 'hours':
case 'hour':
case 'minutes':
case 'minute':
case 'seconds':
case 'second':
case 'milliseconds':
case 'millisecond':
case 'microseconds':
case 'microsecond':
return $this->setDateInterval((
// Override default P1D when instantiating via fluent setters.
[$this->isDefaultInterval ? new CarbonInterval('PT0S') : $this->dateInterval, $method]
)(...$parameters));
}
$dateClass = $this->dateClass;
if ($this->localStrictModeEnabled ?? $dateClass::isStrictModeEnabled()) {
throw new UnknownMethodException($method);
}
return $this;
}
/**
* Set the instance's timezone from a string or object and apply it to start/end.
*/
public function setTimezone(DateTimeZone|string|int $timezone): static
{
$self = $this->copyIfImmutable();
$self->timezoneSetting = $timezone;
$self->timezone = CarbonTimeZone::instance($timezone);
if ($self->startDate) {
$self = $self->setStartDate($self->startDate->setTimezone($timezone));
}
if ($self->endDate) {
$self = $self->setEndDate($self->endDate->setTimezone($timezone));
}
return $self;
}
/**
* Set the instance's timezone from a string or object and add/subtract the offset difference to start/end.
*/
public function shiftTimezone(DateTimeZone|string|int $timezone): static
{
$self = $this->copyIfImmutable();
$self->timezoneSetting = $timezone;
$self->timezone = CarbonTimeZone::instance($timezone);
if ($self->startDate) {
$self = $self->setStartDate($self->startDate->shiftTimezone($timezone));
}
if ($self->endDate) {
$self = $self->setEndDate($self->endDate->shiftTimezone($timezone));
}
return $self;
}
/**
* Returns the end is set, else calculated from start and recurrences.
*
* @param string|null $rounding Optional rounding 'floor', 'ceil', 'round' using the period interval.
*
* @return CarbonInterface
*/
public function calculateEnd(?string $rounding = null): CarbonInterface
{
if ($end = $this->getEndDate($rounding)) {
return $end;
}
if ($this->dateInterval->isEmpty()) {
return $this->getStartDate($rounding);
}
$date = $this->getEndFromRecurrences() ?? $this->iterateUntilEnd();
if ($date && $rounding) {
$date = $date->avoidMutation()->round($this->getDateInterval(), $rounding);
}
return $date;
}
private function getEndFromRecurrences(): ?CarbonInterface
{
if ($this->carbonRecurrences === null) {
throw new UnreachableException(
"Could not calculate period end without either explicit end or recurrences.\n".
"If you're looking for a forever-period, use ->setRecurrences(INF).",
);
}
if ($this->carbonRecurrences === INF) {
$start = $this->getStartDate();
return $start < $start->avoidMutation()->add($this->getDateInterval())
? CarbonImmutable::endOfTime()
: CarbonImmutable::startOfTime();
}
if ($this->filters === [[static::RECURRENCES_FILTER, null]]) {
return $this->getStartDate()->avoidMutation()->add(
$this->getDateInterval()->times(
$this->carbonRecurrences - ($this->isStartExcluded() ? 0 : 1),
),
);
}
return null;
}
private function iterateUntilEnd(): ?CarbonInterface
{
$attempts = 0;
$date = null;
foreach ($this as $date) {
if (++$attempts > static::END_MAX_ATTEMPTS) {
throw new UnreachableException(
'Could not calculate period end after iterating '.static::END_MAX_ATTEMPTS.' times.',
);
}
}
return $date;
}
/**
* Returns true if the current period overlaps the given one (if 1 parameter passed)
* or the period between 2 dates (if 2 parameters passed).
*
* @param CarbonPeriod|\DateTimeInterface|Carbon|CarbonImmutable|string $rangeOrRangeStart
* @param \DateTimeInterface|Carbon|CarbonImmutable|string|null $rangeEnd
*
* @return bool
*/
public function overlaps(mixed $rangeOrRangeStart, mixed $rangeEnd = null): bool
{
$range = $rangeEnd ? static::create($rangeOrRangeStart, $rangeEnd) : $rangeOrRangeStart;
if (!($range instanceof self)) {
$range = static::create($range);
}
[$start, $end] = $this->orderCouple($this->getStartDate(), $this->calculateEnd());
[$rangeStart, $rangeEnd] = $this->orderCouple($range->getStartDate(), $range->calculateEnd());
return $end > $rangeStart && $rangeEnd > $start;
}
/**
* Execute a given function on each date of the period.
*
* @example
* ```
* Carbon::create('2020-11-29')->daysUntil('2020-12-24')->forEach(function (Carbon $date) {
* echo $date->diffInDays('2020-12-25')." days before Christmas!\n";
* });
* ```
*/
public function forEach(callable $callback): void
{
foreach ($this as $date) {
$callback($date);
}
}
/**
* Execute a given function on each date of the period and yield the result of this function.
*
* @example
* ```
* $period = Carbon::create('2020-11-29')->daysUntil('2020-12-24');
* echo implode("\n", iterator_to_array($period->map(function (Carbon $date) {
* return $date->diffInDays('2020-12-25').' days before Christmas!';
* })));
* ```
*/
public function map(callable $callback): Generator
{
foreach ($this as $date) {
yield $callback($date);
}
}
/**
* Determines if the instance is equal to another.
* Warning: if options differ, instances will never be equal.
*
* @see equalTo()
*/
public function eq(mixed $period): bool
{
return $this->equalTo($period);
}
/**
* Determines if the instance is equal to another.
* Warning: if options differ, instances will never be equal.
*/
public function equalTo(mixed $period): bool
{
if (!($period instanceof self)) {
$period = self::make($period);
}
$end = $this->getEndDate();
return $period !== null
&& $this->getDateInterval()->eq($period->getDateInterval())
&& $this->getStartDate()->eq($period->getStartDate())
&& ($end ? $end->eq($period->getEndDate()) : $this->getRecurrences() === $period->getRecurrences())
&& ($this->getOptions() & (~static::IMMUTABLE)) === ($period->getOptions() & (~static::IMMUTABLE));
}
/**
* Determines if the instance is not equal to another.
* Warning: if options differ, instances will never be equal.
*
* @see notEqualTo()
*/
public function ne(mixed $period): bool
{
return $this->notEqualTo($period);
}
/**
* Determines if the instance is not equal to another.
* Warning: if options differ, instances will never be equal.
*/
public function notEqualTo(mixed $period): bool
{
return !$this->eq($period);
}
/**
* Determines if the start date is before another given date.
* (Rather start/end are included by options is ignored.)
*/
public function startsBefore(mixed $date = null): bool
{
return $this->getStartDate()->lessThan($this->resolveCarbon($date));
}
/**
* Determines if the start date is before or the same as a given date.
* (Rather start/end are included by options is ignored.)
*/
public function startsBeforeOrAt(mixed $date = null): bool
{
return $this->getStartDate()->lessThanOrEqualTo($this->resolveCarbon($date));
}
/**
* Determines if the start date is after another given date.
* (Rather start/end are included by options is ignored.)
*/
public function startsAfter(mixed $date = null): bool
{
return $this->getStartDate()->greaterThan($this->resolveCarbon($date));
}
/**
* Determines if the start date is after or the same as a given date.
* (Rather start/end are included by options is ignored.)
*/
public function startsAfterOrAt(mixed $date = null): bool
{
return $this->getStartDate()->greaterThanOrEqualTo($this->resolveCarbon($date));
}
/**
* Determines if the start date is the same as a given date.
* (Rather start/end are included by options is ignored.)
*/
public function startsAt(mixed $date = null): bool
{
return $this->getStartDate()->equalTo($this->resolveCarbon($date));
}
/**
* Determines if the end date is before another given date.
* (Rather start/end are included by options is ignored.)
*/
public function endsBefore(mixed $date = null): bool
{
return $this->calculateEnd()->lessThan($this->resolveCarbon($date));
}
/**
* Determines if the end date is before or the same as a given date.
* (Rather start/end are included by options is ignored.)
*/
public function endsBeforeOrAt(mixed $date = null): bool
{
return $this->calculateEnd()->lessThanOrEqualTo($this->resolveCarbon($date));
}
/**
* Determines if the end date is after another given date.
* (Rather start/end are included by options is ignored.)
*/
public function endsAfter(mixed $date = null): bool
{
return $this->calculateEnd()->greaterThan($this->resolveCarbon($date));
}
/**
* Determines if the end date is after or the same as a given date.
* (Rather start/end are included by options is ignored.)
*/
public function endsAfterOrAt(mixed $date = null): bool
{
return $this->calculateEnd()->greaterThanOrEqualTo($this->resolveCarbon($date));
}
/**
* Determines if the end date is the same as a given date.
* (Rather start/end are included by options is ignored.)
*/
public function endsAt(mixed $date = null): bool
{
return $this->calculateEnd()->equalTo($this->resolveCarbon($date));
}
/**
* Return true if start date is now or later.
* (Rather start/end are included by options is ignored.)
*/
public function isStarted(): bool
{
return $this->startsBeforeOrAt();
}
/**
* Return true if end date is now or later.
* (Rather start/end are included by options is ignored.)
*/
public function isEnded(): bool
{
return $this->endsBeforeOrAt();
}
/**
* Return true if now is between start date (included) and end date (excluded).
* (Rather start/end are included by options is ignored.)
*/
public function isInProgress(): bool
{
return $this->isStarted() && !$this->isEnded();
}
/**
* Round the current instance at the given unit with given precision if specified and the given function.
*/
public function roundUnit(
string $unit,
DateInterval|float|int|string|null $precision = 1,
callable|string $function = 'round',
): static {
$self = $this->copyIfImmutable();
$self = $self->setStartDate($self->getStartDate()->roundUnit($unit, $precision, $function));
if ($self->endDate) {
$self = $self->setEndDate($self->getEndDate()->roundUnit($unit, $precision, $function));
}
return $self->setDateInterval($self->getDateInterval()->roundUnit($unit, $precision, $function));
}
/**
* Truncate the current instance at the given unit with given precision if specified.
*/
public function floorUnit(string $unit, DateInterval|float|int|string|null $precision = 1): static
{
return $this->roundUnit($unit, $precision, 'floor');
}
/**
* Ceil the current instance at the given unit with given precision if specified.
*/
public function ceilUnit(string $unit, DateInterval|float|int|string|null $precision = 1): static
{
return $this->roundUnit($unit, $precision, 'ceil');
}
/**
* Round the current instance second with given precision if specified (else period interval is used).
*/
public function round(
DateInterval|float|int|string|null $precision = null,
callable|string $function = 'round',
): static {
return $this->roundWith(
$precision ?? $this->getDateInterval()->setLocalTranslator(TranslatorImmutable::get('en'))->forHumans(),
$function
);
}
/**
* Round the current instance second with given precision if specified (else period interval is used).
*/
public function floor(DateInterval|float|int|string|null $precision = null): static
{
return $this->round($precision, 'floor');
}
/**
* Ceil the current instance second with given precision if specified (else period interval is used).
*/
public function ceil(DateInterval|float|int|string|null $precision = null): static
{
return $this->round($precision, 'ceil');
}
/**
* Specify data which should be serialized to JSON.
*
* @link https://php.net/manual/en/jsonserializable.jsonserialize.php
*
* @return CarbonInterface[]
*/
public function jsonSerialize(): array
{
return $this->toArray();
}
/**
* Return true if the given date is between start and end.
*/
public function contains(mixed $date = null): bool
{
$startMethod = 'startsBefore'.($this->isStartIncluded() ? 'OrAt' : '');
$endMethod = 'endsAfter'.($this->isEndIncluded() ? 'OrAt' : '');
return $this->$startMethod($date) && $this->$endMethod($date);
}
/**
* Return true if the current period follows a given other period (with no overlap).
* For instance, [2019-08-01 -> 2019-08-12] follows [2019-07-29 -> 2019-07-31]
* Note than in this example, follows() would be false if 2019-08-01 or 2019-07-31 was excluded by options.
*/
public function follows(mixed $period, mixed ...$arguments): bool
{
$period = $this->resolveCarbonPeriod($period, ...$arguments);
return $this->getIncludedStartDate()->equalTo($period->getIncludedEndDate()->add($period->getDateInterval()));
}
/**
* Return true if the given other period follows the current one (with no overlap).
* For instance, [2019-07-29 -> 2019-07-31] is followed by [2019-08-01 -> 2019-08-12]
* Note than in this example, isFollowedBy() would be false if 2019-08-01 or 2019-07-31 was excluded by options.
*/
public function isFollowedBy(mixed $period, mixed ...$arguments): bool
{
$period = $this->resolveCarbonPeriod($period, ...$arguments);
return $period->follows($this);
}
/**
* Return true if the given period either follows or is followed by the current one.
*
* @see follows()
* @see isFollowedBy()
*/
public function isConsecutiveWith(mixed $period, mixed ...$arguments): bool
{
return $this->follows($period, ...$arguments) || $this->isFollowedBy($period, ...$arguments);
}
public function __debugInfo(): array
{
$info = $this->baseDebugInfo();
unset($info['start'], $info['end'], $info['interval'], $info['include_start_date'], $info['include_end_date']);
return $info;
}
/**
* Update properties after removing built-in filters.
*/
protected function updateInternalState(): void
{
if (!$this->hasFilter(static::END_DATE_FILTER)) {
$this->endDate = null;
}
if (!$this->hasFilter(static::RECURRENCES_FILTER)) {
$this->carbonRecurrences = null;
}
}
/**
* Create a filter tuple from raw parameters.
*
* Will create an automatic filter callback for one of Carbon's is* methods.
*/
protected function createFilterTuple(array $parameters): array
{
$method = array_shift($parameters);
if (!$this->isCarbonPredicateMethod($method)) {
return [$method, array_shift($parameters)];
}
return [static fn ($date) => ([$date, $method])(...$parameters), $method];
}
/**
* Return whether given callable is a string pointing to one of Carbon's is* methods
* and should be automatically converted to a filter callback.
*/
protected function isCarbonPredicateMethod(callable|string $callable): bool
{
return \is_string($callable) && str_starts_with($callable, 'is') &&
(method_exists($this->dateClass, $callable) || ([$this->dateClass, 'hasMacro'])($callable));
}
/**
* Recurrences filter callback (limits number of recurrences).
*
* @SuppressWarnings(PHPMD.UnusedFormalParameter)
*/
protected function filterRecurrences(CarbonInterface $current, int $key): bool|callable
{
if ($key < $this->carbonRecurrences) {
return true;
}
return static::END_ITERATION;
}
/**
* End date filter callback.
*
* @return bool|static::END_ITERATION
*/
protected function filterEndDate(CarbonInterface $current): bool|callable
{
if (!$this->isEndExcluded() && $current == $this->endDate) {
return true;
}
if ($this->dateInterval->invert ? $current > $this->endDate : $current < $this->endDate) {
return true;
}
return static::END_ITERATION;
}
/**
* End iteration filter callback.
*
* @return static::END_ITERATION
*/
protected function endIteration(): callable
{
return static::END_ITERATION;
}
/**
* Handle change of the parameters.
*/
protected function handleChangedParameters(): void
{
if (($this->getOptions() & static::IMMUTABLE) && $this->dateClass === Carbon::class) {
$this->dateClass = CarbonImmutable::class;
} elseif (!($this->getOptions() & static::IMMUTABLE) && $this->dateClass === CarbonImmutable::class) {
$this->dateClass = Carbon::class;
}
$this->validationResult = null;
}
/**
* Validate current date and stop iteration when necessary.
*
* Returns true when current date is valid, false if it is not, or static::END_ITERATION
* when iteration should be stopped.
*
* @return bool|static::END_ITERATION
*/
protected function validateCurrentDate(): bool|callable
{
if ($this->carbonCurrent === null) {
$this->rewind();
}
// Check after the first rewind to avoid repeating the initial validation.
return $this->validationResult ?? ($this->validationResult = $this->checkFilters());
}
/**
* Check whether current value and key pass all the filters.
*
* @return bool|static::END_ITERATION
*/
protected function checkFilters(): bool|callable
{
$current = $this->prepareForReturn($this->carbonCurrent);
foreach ($this->filters as $tuple) {
$result = \call_user_func($tuple[0], $current->avoidMutation(), $this->key, $this);
if ($result === static::END_ITERATION) {
return static::END_ITERATION;
}
if (!$result) {
return false;
}
}
return true;
}
/**
* Prepare given date to be returned to the external logic.
*
* @param CarbonInterface $date
*
* @return CarbonInterface
*/
protected function prepareForReturn(CarbonInterface $date)
{
$date = ([$this->dateClass, 'make'])($date);
if ($this->timezone) {
return $date->setTimezone($this->timezone);
}
return $date;
}
/**
* Keep incrementing the current date until a valid date is found or the iteration is ended.
*
* @throws RuntimeException
*/
protected function incrementCurrentDateUntilValid(): void
{
$attempts = 0;
do {
$this->carbonCurrent = $this->carbonCurrent->add($this->dateInterval);
$this->validationResult = null;
if (++$attempts > static::NEXT_MAX_ATTEMPTS) {
throw new UnreachableException('Could not find next valid date.');
}
} while ($this->validateCurrentDate() === false);
}
/**
* Call given macro.
*/
protected function callMacro(string $name, array $parameters): mixed
{
$macro = static::$macros[$name];
if ($macro instanceof Closure) {
$boundMacro = @$macro->bindTo($this, static::class) ?: @$macro->bindTo(null, static::class);
return ($boundMacro ?: $macro)(...$parameters);
}
return $macro(...$parameters);
}
/**
* Return the Carbon instance passed through, a now instance in the same timezone
* if null given or parse the input if string given.
*
* @param \Carbon\Carbon|\Carbon\CarbonPeriod|\Carbon\CarbonInterval|\DateInterval|\DatePeriod|\DateTimeInterface|string|null $date
*
* @return \Carbon\CarbonInterface
*/
protected function resolveCarbon($date = null)
{
return $this->getStartDate()->nowWithSameTz()->carbonize($date);
}
/**
* Resolve passed arguments or DatePeriod to a CarbonPeriod object.
*/
protected function resolveCarbonPeriod(mixed $period, mixed ...$arguments): self
{
if ($period instanceof self) {
return $period;
}
return $period instanceof DatePeriod
? static::instance($period)
: static::create($period, ...$arguments);
}
private function orderCouple($first, $second): array
{
return $first > $second ? [$second, $first] : [$first, $second];
}
private function makeDateTime($value): ?DateTimeInterface
{
if ($value instanceof DateTimeInterface) {
return $value;
}
if ($value instanceof WeekDay || $value instanceof Month) {
$dateClass = $this->dateClass;
return new $dateClass($value, $this->timezoneSetting);
}
if (\is_string($value)) {
$value = trim($value);
if (!preg_match('/^P[\dT]/', $value) &&
!preg_match('/^R\d/', $value) &&
preg_match('/[a-z\d]/i', $value)
) {
$dateClass = $this->dateClass;
return $dateClass::parse($value, $this->timezoneSetting);
}
}
return null;
}
private function isInfiniteDate($date): bool
{
return $date instanceof CarbonInterface && ($date->isEndOfTime() || $date->isStartOfTime());
}
private function rawDate($date): ?DateTimeInterface
{
if ($date === false || $date === null) {
return null;
}
if ($date instanceof CarbonInterface) {
return $date->isMutable()
? $date->toDateTime()
: $date->toDateTimeImmutable();
}
if (\in_array(\get_class($date), [DateTime::class, DateTimeImmutable::class], true)) {
return $date;
}
$class = $date instanceof DateTime ? DateTime::class : DateTimeImmutable::class;
return new $class($date->format('Y-m-d H:i:s.u'), $date->getTimezone());
}
private static function setDefaultParameters(array &$parameters, array $defaults): void
{
foreach ($defaults as [$index, $name, $value]) {
if (!\array_key_exists($index, $parameters) && !\array_key_exists($name, $parameters)) {
$parameters[$index] = $value;
}
}
}
private function setFromAssociativeArray(array $parameters): void
{
if (isset($parameters['start'])) {
$this->setStartDate($parameters['start']);
}
if (isset($parameters['start'])) {
$this->setStartDate($parameters['start']);
}
if (isset($parameters['end'])) {
$this->setEndDate($parameters['end']);
}
if (isset($parameters['recurrences'])) {
$this->setRecurrences($parameters['recurrences']);
}
if (isset($parameters['interval'])) {
$this->setDateInterval($parameters['interval']);
}
if (isset($parameters['options'])) {
$this->setOptions($parameters['options']);
}
}
private function configureTimezone(DateTimeZone $timezone, array $sortedArguments, array $originalArguments): array
{
$this->setTimezone($timezone);
if (\is_string($originalArguments['start'] ?? null)) {
$sortedArguments['start'] = $this->makeDateTime($originalArguments['start']);
}
if (\is_string($originalArguments['end'] ?? null)) {
$sortedArguments['end'] = $this->makeDateTime($originalArguments['end']);
}
return $sortedArguments;
}
}
src/Carbon/CarbonPeriodImmutable.php 0000644 00000001530 14753612052 0013463 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
class CarbonPeriodImmutable extends CarbonPeriod
{
/**
* Default date class of iteration items.
*
* @var string
*/
protected const DEFAULT_DATE_CLASS = CarbonImmutable::class;
/**
* Date class of iteration items.
*/
protected string $dateClass = CarbonImmutable::class;
/**
* Prepare the instance to be set (self if mutable to be mutated,
* copy if immutable to generate a new instance).
*/
protected function copyIfImmutable(): static
{
return $this->constructed ? clone $this : $this;
}
}
src/Carbon/CarbonTimeZone.php 0000644 00000021643 14753612052 0012142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Carbon\Exceptions\InvalidCastException;
use Carbon\Exceptions\InvalidTimeZoneException;
use Carbon\Traits\LocalFactory;
use DateTimeInterface;
use DateTimeZone;
use Exception;
use Throwable;
class CarbonTimeZone extends DateTimeZone
{
use LocalFactory;
public const MAXIMUM_TIMEZONE_OFFSET = 99;
public function __construct(string|int|float $timezone)
{
$this->initLocalFactory();
parent::__construct(static::getDateTimeZoneNameFromMixed($timezone));
}
protected static function parseNumericTimezone(string|int|float $timezone): string
{
if (abs((float) $timezone) > static::MAXIMUM_TIMEZONE_OFFSET) {
throw new InvalidTimeZoneException(
'Absolute timezone offset cannot be greater than '.
static::MAXIMUM_TIMEZONE_OFFSET.'.',
);
}
return ($timezone >= 0 ? '+' : '').ltrim((string) $timezone, '+').':00';
}
protected static function getDateTimeZoneNameFromMixed(string|int|float $timezone): string
{
if (\is_string($timezone)) {
$timezone = preg_replace('/^\s*([+-]\d+)(\d{2})\s*$/', '$1:$2', $timezone);
}
if (is_numeric($timezone)) {
return static::parseNumericTimezone($timezone);
}
return $timezone;
}
/**
* Cast the current instance into the given class.
*
* @param class-string $className The $className::instance() method will be called to cast the current object.
*
* @return DateTimeZone|mixed
*/
public function cast(string $className): mixed
{
if (!method_exists($className, 'instance')) {
if (is_a($className, DateTimeZone::class, true)) {
return new $className($this->getName());
}
throw new InvalidCastException("$className has not the instance() method needed to cast the date.");
}
return $className::instance($this);
}
/**
* Create a CarbonTimeZone from mixed input.
*
* @param DateTimeZone|string|int|false|null $object original value to get CarbonTimeZone from it.
* @param DateTimeZone|string|int|false|null $objectDump dump of the object for error messages.
*
* @throws InvalidTimeZoneException
*
* @return static|null
*/
public static function instance(
DateTimeZone|string|int|false|null $object,
DateTimeZone|string|int|false|null $objectDump = null,
): ?self {
$timezone = $object;
if ($timezone instanceof static) {
return $timezone;
}
if ($timezone === null || $timezone === false) {
return null;
}
try {
if (!($timezone instanceof DateTimeZone)) {
$name = static::getDateTimeZoneNameFromMixed($object);
$timezone = new static($name);
}
return $timezone instanceof static ? $timezone : new static($timezone->getName());
} catch (Exception $exception) {
throw new InvalidTimeZoneException(
'Unknown or bad timezone ('.($objectDump ?: $object).')',
previous: $exception,
);
}
}
/**
* Returns abbreviated name of the current timezone according to DST setting.
*
* @param bool $dst
*
* @return string
*/
public function getAbbreviatedName(bool $dst = false): string
{
$name = $this->getName();
foreach ($this->listAbbreviations() as $abbreviation => $zones) {
foreach ($zones as $zone) {
if ($zone['timezone_id'] === $name && $zone['dst'] == $dst) {
return $abbreviation;
}
}
}
return 'unknown';
}
/**
* @alias getAbbreviatedName
*
* Returns abbreviated name of the current timezone according to DST setting.
*
* @param bool $dst
*
* @return string
*/
public function getAbbr(bool $dst = false): string
{
return $this->getAbbreviatedName($dst);
}
/**
* Get the offset as string "sHH:MM" (such as "+00:00" or "-12:30").
*/
public function toOffsetName(?DateTimeInterface $date = null): string
{
return static::getOffsetNameFromMinuteOffset(
$this->getOffset($this->resolveCarbon($date)) / 60,
);
}
/**
* Returns a new CarbonTimeZone object using the offset string instead of region string.
*/
public function toOffsetTimeZone(?DateTimeInterface $date = null): static
{
return new static($this->toOffsetName($date));
}
/**
* Returns the first region string (such as "America/Toronto") that matches the current timezone or
* false if no match is found.
*
* @see timezone_name_from_abbr native PHP function.
*/
public function toRegionName(?DateTimeInterface $date = null, int $isDST = 1): ?string
{
$name = $this->getName();
$firstChar = substr($name, 0, 1);
if ($firstChar !== '+' && $firstChar !== '-') {
return $name;
}
$date = $this->resolveCarbon($date);
// Integer construction no longer supported since PHP 8
// @codeCoverageIgnoreStart
try {
$offset = @$this->getOffset($date) ?: 0;
} catch (Throwable) {
$offset = 0;
}
// @codeCoverageIgnoreEnd
$name = @timezone_name_from_abbr('', $offset, $isDST);
if ($name) {
return $name;
}
foreach (timezone_identifiers_list() as $timezone) {
if (Carbon::instance($date)->setTimezone($timezone)->getOffset() === $offset) {
return $timezone;
}
}
return null;
}
/**
* Returns a new CarbonTimeZone object using the region string instead of offset string.
*/
public function toRegionTimeZone(?DateTimeInterface $date = null): ?self
{
$timezone = $this->toRegionName($date);
if ($timezone !== null) {
return new static($timezone);
}
if (Carbon::isStrictModeEnabled()) {
throw new InvalidTimeZoneException('Unknown timezone for offset '.$this->getOffset($this->resolveCarbon($date)).' seconds.');
}
return null;
}
/**
* Cast to string (get timezone name).
*
* @return string
*/
public function __toString()
{
return $this->getName();
}
/**
* Return the type number:
*
* Type 1; A UTC offset, such as -0300
* Type 2; A timezone abbreviation, such as GMT
* Type 3: A timezone identifier, such as Europe/London
*/
public function getType(): int
{
return preg_match('/"timezone_type";i:(\d)/', serialize($this), $match) ? (int) $match[1] : 3;
}
/**
* Create a CarbonTimeZone from mixed input.
*
* @param DateTimeZone|string|int|null $object
*
* @return false|static
*/
public static function create($object = null)
{
return static::instance($object);
}
/**
* Create a CarbonTimeZone from int/float hour offset.
*
* @param float $hourOffset number of hour of the timezone shift (can be decimal).
*
* @return false|static
*/
public static function createFromHourOffset(float $hourOffset)
{
return static::createFromMinuteOffset($hourOffset * Carbon::MINUTES_PER_HOUR);
}
/**
* Create a CarbonTimeZone from int/float minute offset.
*
* @param float $minuteOffset number of total minutes of the timezone shift.
*
* @return false|static
*/
public static function createFromMinuteOffset(float $minuteOffset)
{
return static::instance(static::getOffsetNameFromMinuteOffset($minuteOffset));
}
/**
* Convert a total minutes offset into a standardized timezone offset string.
*
* @param float $minutes number of total minutes of the timezone shift.
*
* @return string
*/
public static function getOffsetNameFromMinuteOffset(float $minutes): string
{
$minutes = round($minutes);
$unsignedMinutes = abs($minutes);
return ($minutes < 0 ? '-' : '+').
str_pad((string) floor($unsignedMinutes / 60), 2, '0', STR_PAD_LEFT).
':'.
str_pad((string) ($unsignedMinutes % 60), 2, '0', STR_PAD_LEFT);
}
private function resolveCarbon(?DateTimeInterface $date): DateTimeInterface
{
if ($date) {
return $date;
}
if (isset($this->clock)) {
return $this->clock->now()->setTimezone($this);
}
return Carbon::now($this);
}
}
src/Carbon/Cli/Invoker.php 0000644 00000001700 14753612052 0011377 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Cli;
class Invoker
{
public const CLI_CLASS_NAME = 'Carbon\\Cli';
protected function runWithCli(string $className, array $parameters): bool
{
$cli = new $className();
return $cli(...$parameters);
}
public function __invoke(...$parameters): bool
{
if (class_exists(self::CLI_CLASS_NAME)) {
return $this->runWithCli(self::CLI_CLASS_NAME, $parameters);
}
$function = (($parameters[1] ?? '') === 'install' ? ($parameters[2] ?? null) : null) ?: 'shell_exec';
$function('composer require carbon-cli/carbon-cli --no-interaction');
echo 'Installation succeeded.';
return true;
}
}
src/Carbon/Exceptions/BadComparisonUnitException.php 0000644 00000001656 14753612052 0016646 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use Throwable;
class BadComparisonUnitException extends UnitException
{
/**
* The unit.
*
* @var string
*/
protected $unit;
/**
* Constructor.
*
* @param string $unit
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($unit, $code = 0, ?Throwable $previous = null)
{
$this->unit = $unit;
parent::__construct("Bad comparison unit: '$unit'", $code, $previous);
}
/**
* Get the unit.
*
* @return string
*/
public function getUnit(): string
{
return $this->unit;
}
}
src/Carbon/Exceptions/BadFluentConstructorException.php 0000644 00000002103 14753612052 0017363 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use BadMethodCallException as BaseBadMethodCallException;
use Throwable;
class BadFluentConstructorException extends BaseBadMethodCallException implements BadMethodCallException
{
/**
* The method.
*
* @var string
*/
protected $method;
/**
* Constructor.
*
* @param string $method
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($method, $code = 0, ?Throwable $previous = null)
{
$this->method = $method;
parent::__construct(\sprintf("Unknown fluent constructor '%s'.", $method), $code, $previous);
}
/**
* Get the method.
*
* @return string
*/
public function getMethod(): string
{
return $this->method;
}
}
src/Carbon/Exceptions/BadFluentSetterException.php 0000644 00000002070 14753612052 0016307 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use BadMethodCallException as BaseBadMethodCallException;
use Throwable;
class BadFluentSetterException extends BaseBadMethodCallException implements BadMethodCallException
{
/**
* The setter.
*
* @var string
*/
protected $setter;
/**
* Constructor.
*
* @param string $setter
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($setter, $code = 0, ?Throwable $previous = null)
{
$this->setter = $setter;
parent::__construct(\sprintf("Unknown fluent setter '%s'", $setter), $code, $previous);
}
/**
* Get the setter.
*
* @return string
*/
public function getSetter(): string
{
return $this->setter;
}
}
src/Carbon/Exceptions/BadMethodCallException.php 0000644 00000000537 14753612052 0015705 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
interface BadMethodCallException extends Exception
{
//
}
src/Carbon/Exceptions/EndLessPeriodException.php 0000644 00000000667 14753612052 0015766 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use RuntimeException as BaseRuntimeException;
final class EndLessPeriodException extends BaseRuntimeException implements RuntimeException
{
//
}
src/Carbon/Exceptions/Exception.php 0000644 00000000500 14753612052 0013327 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
interface Exception
{
//
}
src/Carbon/Exceptions/ImmutableException.php 0000644 00000002023 14753612052 0015171 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use RuntimeException as BaseRuntimeException;
use Throwable;
class ImmutableException extends BaseRuntimeException implements RuntimeException
{
/**
* The value.
*
* @var string
*/
protected $value;
/**
* Constructor.
*
* @param string $value the immutable type/value
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($value, $code = 0, ?Throwable $previous = null)
{
$this->value = $value;
parent::__construct("$value is immutable.", $code, $previous);
}
/**
* Get the value.
*
* @return string
*/
public function getValue(): string
{
return $this->value;
}
}
src/Carbon/Exceptions/InvalidArgumentException.php 0000644 00000000541 14753612052 0016346 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
interface InvalidArgumentException extends Exception
{
//
}
src/Carbon/Exceptions/InvalidCastException.php 0000644 00000000717 14753612052 0015463 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class InvalidCastException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/InvalidDateException.php 0000644 00000002553 14753612052 0015446 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
use Throwable;
class InvalidDateException extends BaseInvalidArgumentException implements InvalidArgumentException
{
/**
* The invalid field.
*
* @var string
*/
private $field;
/**
* The invalid value.
*
* @var mixed
*/
private $value;
/**
* Constructor.
*
* @param string $field
* @param mixed $value
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($field, $value, $code = 0, ?Throwable $previous = null)
{
$this->field = $field;
$this->value = $value;
parent::__construct($field.' : '.$value.' is not a valid value.', $code, $previous);
}
/**
* Get the invalid field.
*
* @return string
*/
public function getField()
{
return $this->field;
}
/**
* Get the invalid value.
*
* @return mixed
*/
public function getValue()
{
return $this->value;
}
}
src/Carbon/Exceptions/InvalidFormatException.php 0000644 00000000721 14753612052 0016014 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class InvalidFormatException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/InvalidIntervalException.php 0000644 00000000723 14753612052 0016352 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class InvalidIntervalException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/InvalidPeriodDateException.php 0000644 00000000725 14753612052 0016610 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class InvalidPeriodDateException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/InvalidPeriodParameterException.php 0000644 00000000732 14753612052 0017651 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class InvalidPeriodParameterException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/InvalidTimeZoneException.php 0000644 00000000723 14753612052 0016320 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class InvalidTimeZoneException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/InvalidTypeException.php 0000644 00000000717 14753612052 0015512 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class InvalidTypeException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/NotACarbonClassException.php 0000644 00000002314 14753612052 0016231 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use Carbon\CarbonInterface;
use InvalidArgumentException as BaseInvalidArgumentException;
use Throwable;
class NotACarbonClassException extends BaseInvalidArgumentException implements InvalidArgumentException
{
/**
* The className.
*
* @var string
*/
protected $className;
/**
* Constructor.
*
* @param string $className
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($className, $code = 0, ?Throwable $previous = null)
{
$this->className = $className;
parent::__construct(\sprintf(
'Given class does not implement %s: %s',
CarbonInterface::class,
$className,
), $code, $previous);
}
/**
* Get the className.
*
* @return string
*/
public function getClassName(): string
{
return $this->className;
}
}
src/Carbon/Exceptions/NotAPeriodException.php 0000644 00000000716 14753612052 0015265 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class NotAPeriodException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/NotLocaleAwareException.php 0000644 00000001674 14753612052 0016125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
use Throwable;
class NotLocaleAwareException extends BaseInvalidArgumentException implements InvalidArgumentException
{
/**
* Constructor.
*
* @param mixed $object
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($object, $code = 0, ?Throwable $previous = null)
{
$dump = \is_object($object) ? \get_class($object) : \gettype($object);
parent::__construct("$dump does neither implements Symfony\Contracts\Translation\LocaleAwareInterface nor getLocale() method.", $code, $previous);
}
}
src/Carbon/Exceptions/OutOfRangeException.php 0000644 00000003703 14753612052 0015271 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
use Throwable;
// This will extends OutOfRangeException instead of InvalidArgumentException since 3.0.0
// use OutOfRangeException as BaseOutOfRangeException;
class OutOfRangeException extends BaseInvalidArgumentException implements InvalidArgumentException
{
/**
* The unit or name of the value.
*
* @var string
*/
private $unit;
/**
* The range minimum.
*
* @var mixed
*/
private $min;
/**
* The range maximum.
*
* @var mixed
*/
private $max;
/**
* The invalid value.
*
* @var mixed
*/
private $value;
/**
* Constructor.
*
* @param string $unit
* @param mixed $min
* @param mixed $max
* @param mixed $value
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($unit, $min, $max, $value, $code = 0, ?Throwable $previous = null)
{
$this->unit = $unit;
$this->min = $min;
$this->max = $max;
$this->value = $value;
parent::__construct("$unit must be between $min and $max, $value given", $code, $previous);
}
/**
* @return mixed
*/
public function getMax()
{
return $this->max;
}
/**
* @return mixed
*/
public function getMin()
{
return $this->min;
}
/**
* @return mixed
*/
public function getUnit()
{
return $this->unit;
}
/**
* @return mixed
*/
public function getValue()
{
return $this->value;
}
}
src/Carbon/Exceptions/ParseErrorException.php 0000644 00000003361 14753612052 0015344 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
use Throwable;
class ParseErrorException extends BaseInvalidArgumentException implements InvalidArgumentException
{
/**
* The expected.
*
* @var string
*/
protected $expected;
/**
* The actual.
*
* @var string
*/
protected $actual;
/**
* The help message.
*
* @var string
*/
protected $help;
/**
* Constructor.
*
* @param string $expected
* @param string $actual
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($expected, $actual, $help = '', $code = 0, ?Throwable $previous = null)
{
$this->expected = $expected;
$this->actual = $actual;
$this->help = $help;
$actual = $actual === '' ? 'data is missing' : "get '$actual'";
parent::__construct(trim("Format expected $expected but $actual\n$help"), $code, $previous);
}
/**
* Get the expected.
*
* @return string
*/
public function getExpected(): string
{
return $this->expected;
}
/**
* Get the actual.
*
* @return string
*/
public function getActual(): string
{
return $this->actual;
}
/**
* Get the help message.
*
* @return string
*/
public function getHelp(): string
{
return $this->help;
}
}
src/Carbon/Exceptions/RuntimeException.php 0000644 00000000531 14753612052 0014677 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
interface RuntimeException extends Exception
{
//
}
src/Carbon/Exceptions/UnitException.php 0000644 00000000710 14753612052 0014172 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
class UnitException extends BaseInvalidArgumentException implements InvalidArgumentException
{
//
}
src/Carbon/Exceptions/UnitNotConfiguredException.php 0000644 00000001721 14753612052 0016664 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use Throwable;
class UnitNotConfiguredException extends UnitException
{
/**
* The unit.
*
* @var string
*/
protected $unit;
/**
* Constructor.
*
* @param string $unit
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($unit, $code = 0, ?Throwable $previous = null)
{
$this->unit = $unit;
parent::__construct("Unit $unit have no configuration to get total from other units.", $code, $previous);
}
/**
* Get the unit.
*
* @return string
*/
public function getUnit(): string
{
return $this->unit;
}
}
src/Carbon/Exceptions/UnknownGetterException.php 0000644 00000002067 14753612052 0016074 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
use Throwable;
class UnknownGetterException extends BaseInvalidArgumentException implements InvalidArgumentException
{
/**
* The getter.
*
* @var string
*/
protected $getter;
/**
* Constructor.
*
* @param string $getter getter name
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($getter, $code = 0, ?Throwable $previous = null)
{
$this->getter = $getter;
parent::__construct("Unknown getter '$getter'", $code, $previous);
}
/**
* Get the getter.
*
* @return string
*/
public function getGetter(): string
{
return $this->getter;
}
}
src/Carbon/Exceptions/UnknownMethodException.php 0000644 00000002047 14753612052 0016060 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use BadMethodCallException as BaseBadMethodCallException;
use Throwable;
class UnknownMethodException extends BaseBadMethodCallException implements BadMethodCallException
{
/**
* The method.
*
* @var string
*/
protected $method;
/**
* Constructor.
*
* @param string $method
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($method, $code = 0, ?Throwable $previous = null)
{
$this->method = $method;
parent::__construct("Method $method does not exist.", $code, $previous);
}
/**
* Get the method.
*
* @return string
*/
public function getMethod(): string
{
return $this->method;
}
}
src/Carbon/Exceptions/UnknownSetterException.php 0000644 00000002065 14753612052 0016106 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use InvalidArgumentException as BaseInvalidArgumentException;
use Throwable;
class UnknownSetterException extends BaseInvalidArgumentException implements BadMethodCallException
{
/**
* The setter.
*
* @var string
*/
protected $setter;
/**
* Constructor.
*
* @param string $setter setter name
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($setter, $code = 0, ?Throwable $previous = null)
{
$this->setter = $setter;
parent::__construct("Unknown setter '$setter'", $code, $previous);
}
/**
* Get the setter.
*
* @return string
*/
public function getSetter(): string
{
return $this->setter;
}
}
src/Carbon/Exceptions/UnknownUnitException.php 0000644 00000001641 14753612052 0015556 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use Throwable;
class UnknownUnitException extends UnitException
{
/**
* The unit.
*
* @var string
*/
protected $unit;
/**
* Constructor.
*
* @param string $unit
* @param int $code
* @param Throwable|null $previous
*/
public function __construct($unit, $code = 0, ?Throwable $previous = null)
{
$this->unit = $unit;
parent::__construct("Unknown unit '$unit'.", $code, $previous);
}
/**
* Get the unit.
*
* @return string
*/
public function getUnit(): string
{
return $this->unit;
}
}
src/Carbon/Exceptions/UnreachableException.php 0000644 00000000657 14753612052 0015476 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use RuntimeException as BaseRuntimeException;
class UnreachableException extends BaseRuntimeException implements RuntimeException
{
//
}
src/Carbon/Exceptions/UnsupportedUnitException.php 0000644 00000001072 14753612052 0016445 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Exceptions;
use Exception;
/**
* @codeCoverageIgnore
*/
class UnsupportedUnitException extends UnitException
{
public function __construct(string $unit, int $code = 0, ?Exception $previous = null)
{
parent::__construct("Unsupported unit '$unit'", $code, $previous);
}
}
src/Carbon/Factory.php 0000644 00000130745 14753612052 0010676 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Closure;
use DateTimeImmutable;
use DateTimeInterface;
use DateTimeZone;
use InvalidArgumentException;
use ReflectionMethod;
use RuntimeException;
use Symfony\Contracts\Translation\TranslatorInterface;
use Throwable;
/**
* A factory to generate Carbon instances with common settings.
*
*
*
* @method bool canBeCreatedFromFormat(?string $date, string $format) Checks if the (date)time string is in a given format and valid to create a
* new instance.
* @method ?Carbon create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $timezone = null) Create a new Carbon instance from a specific date and time.
* If any of $year, $month or $day are set to null their now() values will
* be used.
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
* If $hour is not null then the default values for $minute and $second
* will be 0.
* @method Carbon createFromDate($year = null, $month = null, $day = null, $timezone = null) Create a Carbon instance from just a date. The time portion is set to now.
* @method ?Carbon createFromFormat($format, $time, $timezone = null) Create a Carbon instance from a specific format.
* @method ?Carbon createFromIsoFormat(string $format, string $time, $timezone = null, ?string $locale = 'en', ?TranslatorInterface $translator = null) Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
* @method ?Carbon createFromLocaleFormat(string $format, string $locale, string $time, $timezone = null) Create a Carbon instance from a specific format and a string in a given language.
* @method ?Carbon createFromLocaleIsoFormat(string $format, string $locale, string $time, $timezone = null) Create a Carbon instance from a specific ISO format and a string in a given language.
* @method Carbon createFromTime($hour = 0, $minute = 0, $second = 0, $timezone = null) Create a Carbon instance from just a time. The date portion is set to today.
* @method Carbon createFromTimeString(string $time, DateTimeZone|string|int|null $timezone = null) Create a Carbon instance from a time string. The date portion is set to today.
* @method Carbon createFromTimestamp(string|int|float $timestamp, DateTimeZone|string|int|null $timezone = null) Create a Carbon instance from a timestamp and set the timezone (UTC by default).
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method Carbon createFromTimestampMs(string|int|float $timestamp, DateTimeZone|string|int|null $timezone = null) Create a Carbon instance from a timestamp in milliseconds.
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method Carbon createFromTimestampMsUTC($timestamp) Create a Carbon instance from a timestamp in milliseconds.
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method Carbon createFromTimestampUTC(string|int|float $timestamp) Create a Carbon instance from a timestamp keeping the timezone to UTC.
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method Carbon createMidnightDate($year = null, $month = null, $day = null, $timezone = null) Create a Carbon instance from just a date. The time portion is set to midnight.
* @method ?Carbon createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $timezone = null) Create a new safe Carbon instance from a specific date and time.
* If any of $year, $month or $day are set to null their now() values will
* be used.
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
* If $hour is not null then the default values for $minute and $second
* will be 0.
* If one of the set values is not valid, an InvalidDateException
* will be thrown.
* @method Carbon createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $timezone = null) Create a new Carbon instance from a specific date and time using strict validation.
* @method mixed executeWithLocale(string $locale, callable $func) Set the current locale to the given, execute the passed function, reset the locale to previous one,
* then return the result of the closure (or null if the closure was void).
* @method Carbon fromSerialized($value) Create an instance from a serialized string.
* @method array getAvailableLocales() Returns the list of internally available locales and already loaded custom locales.
* (It will ignore custom translator dynamic loading.)
* @method Language[] getAvailableLocalesInfo() Returns list of Language object for each available locale. This object allow you to get the ISO name, native
* name, region and variant of the locale.
* @method array getDays() Get the days of the week.
* @method ?string getFallbackLocale() Get the fallback locale.
* @method array getFormatsToIsoReplacements() List of replacements from date() format to isoFormat().
* @method array getIsoUnits() Returns list of locale units for ISO formatting.
* @method array|false getLastErrors() {@inheritdoc}
* @method string getLocale() Get the current translator locale.
* @method int getMidDayAt() get midday/noon hour
* @method string getTimeFormatByPrecision(string $unitPrecision) Return a format from H:i to H:i:s.u according to given unit precision.
* @method string|Closure|null getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null) Returns raw translation message for a given key.
* @method int getWeekEndsAt(?string $locale = null) Get the last day of week.
* @method int getWeekStartsAt(?string $locale = null) Get the first day of week.
* @method bool hasRelativeKeywords(?string $time) Determine if a time string will produce a relative date.
* @method Carbon instance(DateTimeInterface $date) Create a Carbon instance from a DateTime one.
* @method bool isImmutable() Returns true if the current class/instance is immutable.
* @method bool isModifiableUnit($unit) Returns true if a property can be changed via setter.
* @method bool isMutable() Returns true if the current class/instance is mutable.
* @method bool localeHasDiffOneDayWords(string $locale) Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
* Support is considered enabled if the 3 words are translated in the given locale.
* @method bool localeHasDiffSyntax(string $locale) Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
* Support is considered enabled if the 4 sentences are translated in the given locale.
* @method bool localeHasDiffTwoDayWords(string $locale) Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
* Support is considered enabled if the 2 words are translated in the given locale.
* @method bool localeHasPeriodSyntax($locale) Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
* Support is considered enabled if the 4 sentences are translated in the given locale.
* @method bool localeHasShortUnits(string $locale) Returns true if the given locale is internally supported and has short-units support.
* Support is considered enabled if either year, day or hour has a short variant translated.
* @method ?Carbon make($var, DateTimeZone|string|null $timezone = null) Make a Carbon instance from given variable if possible.
* Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
* and recurrences). Throw an exception for invalid format, but otherwise return null.
* @method void mixin(object|string $mixin) Mix another object into the class.
* @method Carbon now(DateTimeZone|string|int|null $timezone = null) Get a Carbon instance for the current date and time.
* @method Carbon parse(DateTimeInterface|WeekDay|Month|string|int|float|null $time, DateTimeZone|string|int|null $timezone = null) Create a carbon instance from a string.
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
* @method Carbon parseFromLocale(string $time, ?string $locale = null, DateTimeZone|string|int|null $timezone = null) Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
* @method string pluralUnit(string $unit) Returns standardized plural of a given singular/plural unit name (in English).
* @method ?Carbon rawCreateFromFormat(string $format, string $time, $timezone = null) Create a Carbon instance from a specific format.
* @method Carbon rawParse(DateTimeInterface|WeekDay|Month|string|int|float|null $time, DateTimeZone|string|int|null $timezone = null) Create a carbon instance from a string.
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
* @method void setFallbackLocale(string $locale) Set the fallback locale.
* @method void setLocale(string $locale) Set the current translator locale and indicate if the source locale file exists.
* Pass 'auto' as locale to use the closest language to the current LC_TIME locale.
* @method void setMidDayAt($hour) @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather consider mid-day is always 12pm, then if you need to test if it's an other
* hour, test it explicitly:
* $date->format('G') == 13
* or to set explicitly to a given hour:
* $date->setTime(13, 0, 0, 0)
* Set midday/noon hour
* @method string singularUnit(string $unit) Returns standardized singular of a given singular/plural unit name (in English).
* @method void sleep(int|float $seconds)
* @method Carbon today(DateTimeZone|string|int|null $timezone = null) Create a Carbon instance for today.
* @method Carbon tomorrow(DateTimeZone|string|int|null $timezone = null) Create a Carbon instance for tomorrow.
* @method string translateTimeString(string $timeString, ?string $from = null, ?string $to = null, int $mode = CarbonInterface::TRANSLATE_ALL) Translate a time string from a locale to an other.
* @method string translateWith(TranslatorInterface $translator, string $key, array $parameters = [], $number = null) Translate using translation string or callback available.
* @method Carbon yesterday(DateTimeZone|string|int|null $timezone = null) Create a Carbon instance for yesterday.
*
*
*/
class Factory
{
protected string $className = Carbon::class;
protected array $settings = [];
/**
* A test Carbon instance to be returned when now instances are created.
*/
protected Closure|CarbonInterface|null $testNow = null;
/**
* The timezone to restore to when clearing the time mock.
*/
protected ?string $testDefaultTimezone = null;
/**
* Is true when test-now is generated by a closure and timezone should be taken on the fly from it.
*/
protected bool $useTimezoneFromTestNow = false;
/**
* Default translator.
*/
protected TranslatorInterface $translator;
/**
* Days of weekend.
*/
protected array $weekendDays = [
CarbonInterface::SATURDAY,
CarbonInterface::SUNDAY,
];
/**
* Format regex patterns.
*
* @var array
*/
protected array $regexFormats = [
'd' => '(3[01]|[12][0-9]|0[1-9])',
'D' => '(Sun|Mon|Tue|Wed|Thu|Fri|Sat)',
'j' => '([123][0-9]|[1-9])',
'l' => '([a-zA-Z]{2,})',
'N' => '([1-7])',
'S' => '(st|nd|rd|th)',
'w' => '([0-6])',
'z' => '(36[0-5]|3[0-5][0-9]|[12][0-9]{2}|[1-9]?[0-9])',
'W' => '(5[012]|[1-4][0-9]|0?[1-9])',
'F' => '([a-zA-Z]{2,})',
'm' => '(1[012]|0[1-9])',
'M' => '([a-zA-Z]{3})',
'n' => '(1[012]|[1-9])',
't' => '(2[89]|3[01])',
'L' => '(0|1)',
'o' => '([1-9][0-9]{0,4})',
'Y' => '([1-9]?[0-9]{4})',
'y' => '([0-9]{2})',
'a' => '(am|pm)',
'A' => '(AM|PM)',
'B' => '([0-9]{3})',
'g' => '(1[012]|[1-9])',
'G' => '(2[0-3]|1?[0-9])',
'h' => '(1[012]|0[1-9])',
'H' => '(2[0-3]|[01][0-9])',
'i' => '([0-5][0-9])',
's' => '([0-5][0-9])',
'u' => '([0-9]{1,6})',
'v' => '([0-9]{1,3})',
'e' => '([a-zA-Z]{1,5})|([a-zA-Z]*\\/[a-zA-Z]*)',
'I' => '(0|1)',
'O' => '([+-](1[0123]|0[0-9])[0134][05])',
'P' => '([+-](1[0123]|0[0-9]):[0134][05])',
'p' => '(Z|[+-](1[0123]|0[0-9]):[0134][05])',
'T' => '([a-zA-Z]{1,5})',
'Z' => '(-?[1-5]?[0-9]{1,4})',
'U' => '([0-9]*)',
// The formats below are combinations of the above formats.
'c' => '(([1-9]?[0-9]{4})-(1[012]|0[1-9])-(3[01]|[12][0-9]|0[1-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])[+-](1[012]|0[0-9]):([0134][05]))', // Y-m-dTH:i:sP
'r' => '(([a-zA-Z]{3}), ([123][0-9]|0[1-9]) ([a-zA-Z]{3}) ([1-9]?[0-9]{4}) (2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9]) [+-](1[012]|0[0-9])([0134][05]))', // D, d M Y H:i:s O
];
/**
* Format modifiers (such as available in createFromFormat) regex patterns.
*
* @var array
*/
protected array $regexFormatModifiers = [
'*' => '.+',
' ' => '[ ]',
'#' => '[;:\\/.,()-]',
'?' => '([^a]|[a])',
'!' => '',
'|' => '',
'+' => '',
];
public function __construct(array $settings = [], ?string $className = null)
{
if ($className) {
$this->className = $className;
}
$this->settings = $settings;
}
public function getClassName(): string
{
return $this->className;
}
public function setClassName(string $className): self
{
$this->className = $className;
return $this;
}
public function className(?string $className = null): self|string
{
return $className === null ? $this->getClassName() : $this->setClassName($className);
}
public function getSettings(): array
{
return $this->settings;
}
public function setSettings(array $settings): self
{
$this->settings = $settings;
return $this;
}
public function settings(?array $settings = null): self|array
{
return $settings === null ? $this->getSettings() : $this->setSettings($settings);
}
public function mergeSettings(array $settings): self
{
$this->settings = array_merge($this->settings, $settings);
return $this;
}
public function setHumanDiffOptions(int $humanDiffOptions): void
{
$this->mergeSettings([
'humanDiffOptions' => $humanDiffOptions,
]);
}
public function enableHumanDiffOption($humanDiffOption): void
{
$this->setHumanDiffOptions($this->getHumanDiffOptions() | $humanDiffOption);
}
public function disableHumanDiffOption(int $humanDiffOption): void
{
$this->setHumanDiffOptions($this->getHumanDiffOptions() & ~$humanDiffOption);
}
public function getHumanDiffOptions(): int
{
return (int) ($this->getSettings()['humanDiffOptions'] ?? 0);
}
/**
* Register a custom macro.
*
* Pass null macro to remove it.
*
* @example
* ```
* $userSettings = [
* 'locale' => 'pt',
* 'timezone' => 'America/Sao_Paulo',
* ];
* $factory->macro('userFormat', function () use ($userSettings) {
* return $this->copy()->locale($userSettings['locale'])->tz($userSettings['timezone'])->calendar();
* });
* echo $factory->yesterday()->hours(11)->userFormat();
* ```
*/
public function macro(string $name, ?callable $macro): void
{
$macros = $this->getSettings()['macros'] ?? [];
$macros[$name] = $macro;
$this->mergeSettings([
'macros' => $macros,
]);
}
/**
* Remove all macros and generic macros.
*/
public function resetMacros(): void
{
$this->mergeSettings([
'macros' => null,
'genericMacros' => null,
]);
}
/**
* Register a custom macro.
*
* @param callable $macro
* @param int $priority marco with higher priority is tried first
*
* @return void
*/
public function genericMacro(callable $macro, int $priority = 0): void
{
$genericMacros = $this->getSettings()['genericMacros'] ?? [];
if (!isset($genericMacros[$priority])) {
$genericMacros[$priority] = [];
krsort($genericMacros, SORT_NUMERIC);
}
$genericMacros[$priority][] = $macro;
$this->mergeSettings([
'genericMacros' => $genericMacros,
]);
}
/**
* Checks if macro is registered globally.
*/
public function hasMacro(string $name): bool
{
return isset($this->getSettings()['macros'][$name]);
}
/**
* Get the raw callable macro registered globally for a given name.
*/
public function getMacro(string $name): ?callable
{
return $this->getSettings()['macros'][$name] ?? null;
}
/**
* Set the default translator instance to use.
*/
public function setTranslator(TranslatorInterface $translator): void
{
$this->translator = $translator;
}
/**
* Initialize the default translator instance if necessary.
*/
public function getTranslator(): TranslatorInterface
{
return $this->translator ??= Translator::get();
}
/**
* Reset the format used to the default when type juggling a Carbon instance to a string
*
* @return void
*/
public function resetToStringFormat(): void
{
$this->setToStringFormat(null);
}
/**
* Set the default format used when type juggling a Carbon instance to a string.
*/
public function setToStringFormat(string|Closure|null $format): void
{
$this->mergeSettings([
'toStringFormat' => $format,
]);
}
/**
* JSON serialize all Carbon instances using the given callback.
*/
public function serializeUsing(string|callable|null $format): void
{
$this->mergeSettings([
'toJsonFormat' => $format,
]);
}
/**
* Enable the strict mode (or disable with passing false).
*/
public function useStrictMode(bool $strictModeEnabled = true): void
{
$this->mergeSettings([
'strictMode' => $strictModeEnabled,
]);
}
/**
* Returns true if the strict mode is globally in use, false else.
* (It can be overridden in specific instances.)
*/
public function isStrictModeEnabled(): bool
{
return $this->getSettings()['strictMode'] ?? true;
}
/**
* Indicates if months should be calculated with overflow.
*/
public function useMonthsOverflow(bool $monthsOverflow = true): void
{
$this->mergeSettings([
'monthOverflow' => $monthsOverflow,
]);
}
/**
* Reset the month overflow behavior.
*/
public function resetMonthsOverflow(): void
{
$this->useMonthsOverflow();
}
/**
* Get the month overflow global behavior (can be overridden in specific instances).
*/
public function shouldOverflowMonths(): bool
{
return $this->getSettings()['monthOverflow'] ?? true;
}
/**
* Indicates if years should be calculated with overflow.
*/
public function useYearsOverflow(bool $yearsOverflow = true): void
{
$this->mergeSettings([
'yearOverflow' => $yearsOverflow,
]);
}
/**
* Reset the month overflow behavior.
*/
public function resetYearsOverflow(): void
{
$this->useYearsOverflow();
}
/**
* Get the month overflow global behavior (can be overridden in specific instances).
*/
public function shouldOverflowYears(): bool
{
return $this->getSettings()['yearOverflow'] ?? true;
}
/**
* Get weekend days
*
* @return array
*/
public function getWeekendDays(): array
{
return $this->weekendDays;
}
/**
* Set weekend days
*/
public function setWeekendDays(array $days): void
{
$this->weekendDays = $days;
}
/**
* Checks if the (date)time string is in a given format.
*
* @example
* ```
* Carbon::hasFormat('11:12:45', 'h:i:s'); // true
* Carbon::hasFormat('13:12:45', 'h:i:s'); // false
* ```
*/
public function hasFormat(string $date, string $format): bool
{
// createFromFormat() is known to handle edge cases silently.
// E.g. "1975-5-1" (Y-n-j) will still be parsed correctly when "Y-m-d" is supplied as the format.
// To ensure we're really testing against our desired format, perform an additional regex validation.
return $this->matchFormatPattern($date, preg_quote($format, '/'), $this->regexFormats);
}
/**
* Checks if the (date)time string is in a given format.
*
* @example
* ```
* Carbon::hasFormatWithModifiers('31/08/2015', 'd#m#Y'); // true
* Carbon::hasFormatWithModifiers('31/08/2015', 'm#d#Y'); // false
* ```
*/
public function hasFormatWithModifiers(string $date, string $format): bool
{
return $this->matchFormatPattern($date, $format, array_merge($this->regexFormats, $this->regexFormatModifiers));
}
/**
* Set a Carbon instance (real or mock) to be returned when a "now"
* instance is created. The provided instance will be returned
* specifically under the following conditions:
* - A call to the static now() method, ex. Carbon::now()
* - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
* - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
* - When a string containing the desired time is passed to Carbon::parse().
*
* Note the timezone parameter was left out of the examples above and
* has no affect as the mock value will be returned regardless of its value.
*
* Only the moment is mocked with setTestNow(), the timezone will still be the one passed
* as parameter of date_default_timezone_get() as a fallback (see setTestNowAndTimezone()).
*
* To clear the test instance call this method using the default
* parameter of null.
*
* /!\ Use this method for unit tests only.
*
* @param DateTimeInterface|Closure|static|string|false|null $testNow real or mock Carbon instance
*/
public function setTestNow(mixed $testNow = null): void
{
$this->useTimezoneFromTestNow = false;
$this->testNow = $testNow instanceof self || $testNow instanceof Closure
? $testNow
: $this->make($testNow);
}
/**
* Set a Carbon instance (real or mock) to be returned when a "now"
* instance is created. The provided instance will be returned
* specifically under the following conditions:
* - A call to the static now() method, ex. Carbon::now()
* - When a null (or blank string) is passed to the constructor or parse(), ex. new Carbon(null)
* - When the string "now" is passed to the constructor or parse(), ex. new Carbon('now')
* - When a string containing the desired time is passed to Carbon::parse().
*
* It will also align default timezone (e.g. call date_default_timezone_set()) with
* the second argument or if null, with the timezone of the given date object.
*
* To clear the test instance call this method using the default
* parameter of null.
*
* /!\ Use this method for unit tests only.
*
* @param DateTimeInterface|Closure|static|string|false|null $testNow real or mock Carbon instance
*/
public function setTestNowAndTimezone(mixed $testNow = null, $timezone = null): void
{
if ($testNow) {
$this->testDefaultTimezone ??= date_default_timezone_get();
}
$useDateInstanceTimezone = $testNow instanceof DateTimeInterface;
if ($useDateInstanceTimezone) {
$this->setDefaultTimezone($testNow->getTimezone()->getName(), $testNow);
}
$this->setTestNow($testNow);
$this->useTimezoneFromTestNow = ($timezone === null && $testNow instanceof Closure);
if (!$useDateInstanceTimezone) {
$now = $this->getMockedTestNow(\func_num_args() === 1 ? null : $timezone);
$this->setDefaultTimezone($now?->tzName ?? $this->testDefaultTimezone ?? 'UTC', $now);
}
if (!$testNow) {
$this->testDefaultTimezone = null;
}
}
/**
* Temporarily sets a static date to be used within the callback.
* Using setTestNow to set the date, executing the callback, then
* clearing the test instance.
*
* /!\ Use this method for unit tests only.
*
* @template T
*
* @param DateTimeInterface|Closure|static|string|false|null $testNow real or mock Carbon instance
* @param Closure(): T $callback
*
* @return T
*/
public function withTestNow(mixed $testNow, callable $callback): mixed
{
$this->setTestNow($testNow);
try {
$result = $callback();
} finally {
$this->setTestNow();
}
return $result;
}
/**
* Get the Carbon instance (real or mock) to be returned when a "now"
* instance is created.
*
* @return Closure|CarbonInterface|null the current instance used for testing
*/
public function getTestNow(): Closure|CarbonInterface|null
{
if ($this->testNow === null) {
$factory = FactoryImmutable::getDefaultInstance();
if ($factory !== $this) {
return $factory->getTestNow();
}
}
return $this->testNow;
}
public function handleTestNowClosure(
Closure|CarbonInterface|null $testNow,
DateTimeZone|string|int|null $timezone = null,
): ?CarbonInterface {
if ($testNow instanceof Closure) {
$callback = Callback::fromClosure($testNow);
$realNow = new DateTimeImmutable('now');
$testNow = $testNow($callback->prepareParameter($this->parse(
$realNow->format('Y-m-d H:i:s.u'),
$timezone ?? $realNow->getTimezone(),
)));
if ($testNow !== null && !($testNow instanceof DateTimeInterface)) {
$function = $callback->getReflectionFunction();
$type = \is_object($testNow) ? $testNow::class : \gettype($testNow);
throw new RuntimeException(
'The test closure defined in '.$function->getFileName().
' at line '.$function->getStartLine().' returned '.$type.
'; expected '.CarbonInterface::class.'|null',
);
}
if (!($testNow instanceof CarbonInterface)) {
$timezone ??= $this->useTimezoneFromTestNow ? $testNow->getTimezone() : null;
$testNow = $this->__call('instance', [$testNow, $timezone]);
}
}
return $testNow;
}
/**
* Determine if there is a valid test instance set. A valid test instance
* is anything that is not null.
*
* @return bool true if there is a test instance, otherwise false
*/
public function hasTestNow(): bool
{
return $this->getTestNow() !== null;
}
public function withTimeZone(DateTimeZone|string|int|null $timezone): static
{
$factory = clone $this;
$factory->settings['timezone'] = $timezone;
return $factory;
}
public function __call(string $name, array $arguments): mixed
{
$method = new ReflectionMethod($this->className, $name);
$settings = $this->settings;
if ($settings && isset($settings['timezone'])) {
$timezoneParameters = array_filter($method->getParameters(), function ($parameter) {
return \in_array($parameter->getName(), ['tz', 'timezone'], true);
});
$timezoneSetting = $settings['timezone'];
if (isset($arguments[0]) && \in_array($name, ['instance', 'make', 'create', 'parse'], true)) {
if ($arguments[0] instanceof DateTimeInterface) {
$settings['innerTimezone'] = $settings['timezone'];
} elseif (\is_string($arguments[0]) && date_parse($arguments[0])['is_localtime']) {
unset($settings['timezone'], $settings['innerTimezone']);
}
}
if (\count($timezoneParameters)) {
$index = key($timezoneParameters);
if (!isset($arguments[$index])) {
array_splice($arguments, key($timezoneParameters), 0, [$timezoneSetting]);
}
unset($settings['timezone']);
}
}
$clock = FactoryImmutable::getCurrentClock();
FactoryImmutable::setCurrentClock($this);
try {
$result = $this->className::$name(...$arguments);
} finally {
FactoryImmutable::setCurrentClock($clock);
}
if (isset($this->translator)) {
$settings['translator'] = $this->translator;
}
return $result instanceof CarbonInterface && !empty($settings)
? $result->settings($settings)
: $result;
}
/**
* Get the mocked date passed in setTestNow() and if it's a Closure, execute it.
*/
protected function getMockedTestNow(DateTimeZone|string|int|null $timezone): ?CarbonInterface
{
$testNow = $this->handleTestNowClosure($this->getTestNow());
if ($testNow instanceof CarbonInterface) {
$testNow = $testNow->avoidMutation();
if ($timezone !== null) {
return $testNow->setTimezone($timezone);
}
}
return $testNow;
}
/**
* Checks if the (date)time string is in a given format with
* given list of pattern replacements.
*
* @example
* ```
* Carbon::hasFormat('11:12:45', 'h:i:s'); // true
* Carbon::hasFormat('13:12:45', 'h:i:s'); // false
* ```
*
* @param string $date
* @param string $format
* @param array $replacements
*
* @return bool
*/
private function matchFormatPattern(string $date, string $format, array $replacements): bool
{
// Preg quote, but remove escaped backslashes since we'll deal with escaped characters in the format string.
$regex = str_replace('\\\\', '\\', $format);
// Replace not-escaped letters
$regex = preg_replace_callback(
'/(? $match[1].strtr($match[2], $replacements),
$regex,
);
// Replace escaped letters by the letter itself
$regex = preg_replace('/(?toRegionName($date);
throw new InvalidArgumentException(
"Timezone ID '$timezone' is invalid".
($suggestion && $suggestion !== $timezone ? ", did you mean '$suggestion'?" : '.')."\n".
"It must be one of the IDs from DateTimeZone::listIdentifiers(),\n".
'For the record, hours/minutes offset are relevant only for a particular moment, '.
'but not as a default timezone.',
0,
$previous
);
}
}
}
src/Carbon/FactoryImmutable.php 0000644 00000060436 14753612052 0012535 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Closure;
use DateTimeInterface;
use DateTimeZone;
use Symfony\Component\Clock\ClockInterface;
use Symfony\Component\Clock\NativeClock;
use Symfony\Contracts\Translation\TranslatorInterface;
/**
* A factory to generate CarbonImmutable instances with common settings.
*
*
*
* @method bool canBeCreatedFromFormat(?string $date, string $format) Checks if the (date)time string is in a given format and valid to create a
* new instance.
* @method ?CarbonImmutable create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $timezone = null) Create a new Carbon instance from a specific date and time.
* If any of $year, $month or $day are set to null their now() values will
* be used.
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
* If $hour is not null then the default values for $minute and $second
* will be 0.
* @method CarbonImmutable createFromDate($year = null, $month = null, $day = null, $timezone = null) Create a Carbon instance from just a date. The time portion is set to now.
* @method ?CarbonImmutable createFromFormat($format, $time, $timezone = null) Create a Carbon instance from a specific format.
* @method ?CarbonImmutable createFromIsoFormat(string $format, string $time, $timezone = null, ?string $locale = 'en', ?TranslatorInterface $translator = null) Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
* @method ?CarbonImmutable createFromLocaleFormat(string $format, string $locale, string $time, $timezone = null) Create a Carbon instance from a specific format and a string in a given language.
* @method ?CarbonImmutable createFromLocaleIsoFormat(string $format, string $locale, string $time, $timezone = null) Create a Carbon instance from a specific ISO format and a string in a given language.
* @method CarbonImmutable createFromTime($hour = 0, $minute = 0, $second = 0, $timezone = null) Create a Carbon instance from just a time. The date portion is set to today.
* @method CarbonImmutable createFromTimeString(string $time, DateTimeZone|string|int|null $timezone = null) Create a Carbon instance from a time string. The date portion is set to today.
* @method CarbonImmutable createFromTimestamp(string|int|float $timestamp, DateTimeZone|string|int|null $timezone = null) Create a Carbon instance from a timestamp and set the timezone (UTC by default).
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method CarbonImmutable createFromTimestampMs(string|int|float $timestamp, DateTimeZone|string|int|null $timezone = null) Create a Carbon instance from a timestamp in milliseconds.
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method CarbonImmutable createFromTimestampMsUTC($timestamp) Create a Carbon instance from a timestamp in milliseconds.
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method CarbonImmutable createFromTimestampUTC(string|int|float $timestamp) Create a Carbon instance from a timestamp keeping the timezone to UTC.
* Timestamp input can be given as int, float or a string containing one or more numbers.
* @method CarbonImmutable createMidnightDate($year = null, $month = null, $day = null, $timezone = null) Create a Carbon instance from just a date. The time portion is set to midnight.
* @method ?CarbonImmutable createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $timezone = null) Create a new safe Carbon instance from a specific date and time.
* If any of $year, $month or $day are set to null their now() values will
* be used.
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
* If $hour is not null then the default values for $minute and $second
* will be 0.
* If one of the set values is not valid, an InvalidDateException
* will be thrown.
* @method CarbonImmutable createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $timezone = null) Create a new Carbon instance from a specific date and time using strict validation.
* @method mixed executeWithLocale(string $locale, callable $func) Set the current locale to the given, execute the passed function, reset the locale to previous one,
* then return the result of the closure (or null if the closure was void).
* @method CarbonImmutable fromSerialized($value) Create an instance from a serialized string.
* @method array getAvailableLocales() Returns the list of internally available locales and already loaded custom locales.
* (It will ignore custom translator dynamic loading.)
* @method Language[] getAvailableLocalesInfo() Returns list of Language object for each available locale. This object allow you to get the ISO name, native
* name, region and variant of the locale.
* @method array getDays() Get the days of the week.
* @method ?string getFallbackLocale() Get the fallback locale.
* @method array getFormatsToIsoReplacements() List of replacements from date() format to isoFormat().
* @method array getIsoUnits() Returns list of locale units for ISO formatting.
* @method array|false getLastErrors() {@inheritdoc}
* @method string getLocale() Get the current translator locale.
* @method int getMidDayAt() get midday/noon hour
* @method string getTimeFormatByPrecision(string $unitPrecision) Return a format from H:i to H:i:s.u according to given unit precision.
* @method string|Closure|null getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null) Returns raw translation message for a given key.
* @method int getWeekEndsAt(?string $locale = null) Get the last day of week.
* @method int getWeekStartsAt(?string $locale = null) Get the first day of week.
* @method bool hasRelativeKeywords(?string $time) Determine if a time string will produce a relative date.
* @method CarbonImmutable instance(DateTimeInterface $date) Create a Carbon instance from a DateTime one.
* @method bool isImmutable() Returns true if the current class/instance is immutable.
* @method bool isModifiableUnit($unit) Returns true if a property can be changed via setter.
* @method bool isMutable() Returns true if the current class/instance is mutable.
* @method bool localeHasDiffOneDayWords(string $locale) Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
* Support is considered enabled if the 3 words are translated in the given locale.
* @method bool localeHasDiffSyntax(string $locale) Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
* Support is considered enabled if the 4 sentences are translated in the given locale.
* @method bool localeHasDiffTwoDayWords(string $locale) Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
* Support is considered enabled if the 2 words are translated in the given locale.
* @method bool localeHasPeriodSyntax($locale) Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
* Support is considered enabled if the 4 sentences are translated in the given locale.
* @method bool localeHasShortUnits(string $locale) Returns true if the given locale is internally supported and has short-units support.
* Support is considered enabled if either year, day or hour has a short variant translated.
* @method ?CarbonImmutable make($var, DateTimeZone|string|null $timezone = null) Make a Carbon instance from given variable if possible.
* Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
* and recurrences). Throw an exception for invalid format, but otherwise return null.
* @method void mixin(object|string $mixin) Mix another object into the class.
* @method CarbonImmutable parse(DateTimeInterface|WeekDay|Month|string|int|float|null $time, DateTimeZone|string|int|null $timezone = null) Create a carbon instance from a string.
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
* @method CarbonImmutable parseFromLocale(string $time, ?string $locale = null, DateTimeZone|string|int|null $timezone = null) Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
* @method string pluralUnit(string $unit) Returns standardized plural of a given singular/plural unit name (in English).
* @method ?CarbonImmutable rawCreateFromFormat(string $format, string $time, $timezone = null) Create a Carbon instance from a specific format.
* @method CarbonImmutable rawParse(DateTimeInterface|WeekDay|Month|string|int|float|null $time, DateTimeZone|string|int|null $timezone = null) Create a carbon instance from a string.
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
* @method void setFallbackLocale(string $locale) Set the fallback locale.
* @method void setLocale(string $locale) Set the current translator locale and indicate if the source locale file exists.
* Pass 'auto' as locale to use the closest language to the current LC_TIME locale.
* @method void setMidDayAt($hour) @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather consider mid-day is always 12pm, then if you need to test if it's an other
* hour, test it explicitly:
* $date->format('G') == 13
* or to set explicitly to a given hour:
* $date->setTime(13, 0, 0, 0)
* Set midday/noon hour
* @method string singularUnit(string $unit) Returns standardized singular of a given singular/plural unit name (in English).
* @method CarbonImmutable today(DateTimeZone|string|int|null $timezone = null) Create a Carbon instance for today.
* @method CarbonImmutable tomorrow(DateTimeZone|string|int|null $timezone = null) Create a Carbon instance for tomorrow.
* @method string translateTimeString(string $timeString, ?string $from = null, ?string $to = null, int $mode = CarbonInterface::TRANSLATE_ALL) Translate a time string from a locale to an other.
* @method string translateWith(TranslatorInterface $translator, string $key, array $parameters = [], $number = null) Translate using translation string or callback available.
* @method CarbonImmutable yesterday(DateTimeZone|string|int|null $timezone = null) Create a Carbon instance for yesterday.
*
*
*/
class FactoryImmutable extends Factory implements ClockInterface
{
protected string $className = CarbonImmutable::class;
private static ?self $defaultInstance = null;
private static ?WrapperClock $currentClock = null;
/**
* @internal Instance used for static calls, such as Carbon::getTranslator(), CarbonImmutable::setTestNow(), etc.
*/
public static function getDefaultInstance(): self
{
return self::$defaultInstance ??= new self();
}
/**
* @internal Instance used for static calls possibly called by non-static methods.
*/
public static function getInstance(): Factory
{
return self::$currentClock?->getFactory() ?? self::getDefaultInstance();
}
/**
* @internal Set instance before creating new dates.
*/
public static function setCurrentClock(ClockInterface|Factory|DateTimeInterface|null $currentClock): void
{
if ($currentClock && !($currentClock instanceof WrapperClock)) {
$currentClock = new WrapperClock($currentClock);
}
self::$currentClock = $currentClock;
}
/**
* @internal Instance used to link new object to their factory creator.
*/
public static function getCurrentClock(): ?WrapperClock
{
return self::$currentClock;
}
/**
* Get a Carbon instance for the current date and time.
*/
public function now(DateTimeZone|string|int|null $timezone = null): CarbonImmutable
{
return $this->__call('now', [$timezone]);
}
public function sleep(int|float $seconds): void
{
if ($this->hasTestNow()) {
$this->setTestNow($this->getTestNow()->avoidMutation()->addSeconds($seconds));
return;
}
(new NativeClock('UTC'))->sleep($seconds);
}
}
src/Carbon/Lang/aa.php 0000644 00000000516 14753612052 0010521 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/aa_DJ.php';
src/Carbon/Lang/aa_DJ.php 0000644 00000003037 14753612052 0011077 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Qunxa Garablu', 'Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Liiqen', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
'months_short' => ['qun', 'nah', 'cig', 'agd', 'cax', 'qas', 'qad', 'leq', 'way', 'dit', 'xim', 'kax'],
'weekdays' => ['Acaada', 'Etleeni', 'Talaata', 'Arbaqa', 'Kamiisi', 'Gumqata', 'Sabti'],
'weekdays_short' => ['aca', 'etl', 'tal', 'arb', 'kam', 'gum', 'sab'],
'weekdays_min' => ['aca', 'etl', 'tal', 'arb', 'kam', 'gum', 'sab'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'meridiem' => ['saaku', 'carra'],
'year' => ':count gaqambo', // less reliable
'y' => ':count gaqambo', // less reliable
'a_year' => ':count gaqambo', // less reliable
'month' => ':count àlsa',
'm' => ':count àlsa',
'a_month' => ':count àlsa',
'day' => ':count saaku', // less reliable
'd' => ':count saaku', // less reliable
'a_day' => ':count saaku', // less reliable
'hour' => ':count ayti', // less reliable
'h' => ':count ayti', // less reliable
'a_hour' => ':count ayti', // less reliable
]);
src/Carbon/Lang/aa_ER.php 0000644 00000002044 14753612052 0011105 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Qunxa Garablu', 'Naharsi Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Leqeeni', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
'months_short' => ['Qun', 'Nah', 'Cig', 'Agd', 'Cax', 'Qas', 'Qad', 'Leq', 'Way', 'Dit', 'Xim', 'Kax'],
'weekdays' => ['Acaada', 'Etleeni', 'Talaata', 'Arbaqa', 'Kamiisi', 'Gumqata', 'Sabti'],
'weekdays_short' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
'weekdays_min' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['saaku', 'carra'],
]);
src/Carbon/Lang/aa_ER@saaho.php 0000644 00000002050 14753612052 0012216 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Qunxa Garablu', 'Naharsi Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Leqeeni', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
'months_short' => ['Qun', 'Nah', 'Cig', 'Agd', 'Cax', 'Qas', 'Qad', 'Leq', 'Way', 'Dit', 'Xim', 'Kax'],
'weekdays' => ['Naba Sambat', 'Sani', 'Salus', 'Rabuq', 'Camus', 'Jumqata', 'Qunxa Sambat'],
'weekdays_short' => ['Nab', 'San', 'Sal', 'Rab', 'Cam', 'Jum', 'Qun'],
'weekdays_min' => ['Nab', 'San', 'Sal', 'Rab', 'Cam', 'Jum', 'Qun'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['saaku', 'carra'],
]);
src/Carbon/Lang/aa_ET.php 0000644 00000002033 14753612052 0011105 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Qunxa Garablu', 'Kudo', 'Ciggilta Kudo', 'Agda Baxisso', 'Caxah Alsa', 'Qasa Dirri', 'Qado Dirri', 'Liiqen', 'Waysu', 'Diteli', 'Ximoli', 'Kaxxa Garablu'],
'months_short' => ['Qun', 'Kud', 'Cig', 'Agd', 'Cax', 'Qas', 'Qad', 'Leq', 'Way', 'Dit', 'Xim', 'Kax'],
'weekdays' => ['Acaada', 'Etleeni', 'Talaata', 'Arbaqa', 'Kamiisi', 'Gumqata', 'Sabti'],
'weekdays_short' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
'weekdays_min' => ['Aca', 'Etl', 'Tal', 'Arb', 'Kam', 'Gum', 'Sab'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['saaku', 'carra'],
]);
src/Carbon/Lang/af.php 0000644 00000005163 14753612052 0010531 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - JD Isaacks
* - Pierre du Plessis
*/
return [
'year' => ':count jaar',
'a_year' => '\'n jaar|:count jaar',
'y' => ':count j.',
'month' => ':count maand|:count maande',
'a_month' => '\'n maand|:count maande',
'm' => ':count maa.',
'week' => ':count week|:count weke',
'a_week' => '\'n week|:count weke',
'w' => ':count w.',
'day' => ':count dag|:count dae',
'a_day' => '\'n dag|:count dae',
'd' => ':count d.',
'hour' => ':count uur',
'a_hour' => '\'n uur|:count uur',
'h' => ':count u.',
'minute' => ':count minuut|:count minute',
'a_minute' => '\'n minuut|:count minute',
'min' => ':count min.',
'second' => ':count sekond|:count sekondes',
'a_second' => '\'n paar sekondes|:count sekondes',
's' => ':count s.',
'ago' => ':time gelede',
'from_now' => 'oor :time',
'after' => ':time na',
'before' => ':time voor',
'diff_now' => 'Nou',
'diff_today' => 'Vandag',
'diff_today_regexp' => 'Vandag(?:\\s+om)?',
'diff_yesterday' => 'Gister',
'diff_yesterday_regexp' => 'Gister(?:\\s+om)?',
'diff_tomorrow' => 'Môre',
'diff_tomorrow_regexp' => 'Môre(?:\\s+om)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Vandag om] LT',
'nextDay' => '[Môre om] LT',
'nextWeek' => 'dddd [om] LT',
'lastDay' => '[Gister om] LT',
'lastWeek' => '[Laas] dddd [om] LT',
'sameElse' => 'L',
],
'ordinal' => static fn ($number) => $number.(($number === 1 || $number === 8 || $number >= 20) ? 'ste' : 'de'),
'meridiem' => ['VM', 'NM'],
'months' => ['Januarie', 'Februarie', 'Maart', 'April', 'Mei', 'Junie', 'Julie', 'Augustus', 'September', 'Oktober', 'November', 'Desember'],
'months_short' => ['Jan', 'Feb', 'Mrt', 'Apr', 'Mei', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['Sondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrydag', 'Saterdag'],
'weekdays_short' => ['Son', 'Maa', 'Din', 'Woe', 'Don', 'Vry', 'Sat'],
'weekdays_min' => ['So', 'Ma', 'Di', 'Wo', 'Do', 'Vr', 'Sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' en '],
];
src/Carbon/Lang/af_NA.php 0000644 00000002106 14753612052 0011101 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/af.php', [
'meridiem' => ['v', 'n'],
'weekdays' => ['Sondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrydag', 'Saterdag'],
'weekdays_short' => ['So.', 'Ma.', 'Di.', 'Wo.', 'Do.', 'Vr.', 'Sa.'],
'weekdays_min' => ['So.', 'Ma.', 'Di.', 'Wo.', 'Do.', 'Vr.', 'Sa.'],
'months' => ['Januarie', 'Februarie', 'Maart', 'April', 'Mei', 'Junie', 'Julie', 'Augustus', 'September', 'Oktober', 'November', 'Desember'],
'months_short' => ['Jan.', 'Feb.', 'Mrt.', 'Apr.', 'Mei', 'Jun.', 'Jul.', 'Aug.', 'Sep.', 'Okt.', 'Nov.', 'Des.'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'DD MMM YYYY',
'LLL' => 'DD MMMM YYYY HH:mm',
'LLLL' => 'dddd, DD MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/af_ZA.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/af.php';
src/Carbon/Lang/agq.php 0000644 00000002451 14753612052 0010710 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['a.g', 'a.k'],
'weekdays' => ['tsuʔntsɨ', 'tsuʔukpà', 'tsuʔughɔe', 'tsuʔutɔ̀mlò', 'tsuʔumè', 'tsuʔughɨ̂m', 'tsuʔndzɨkɔʔɔ'],
'weekdays_short' => ['nts', 'kpa', 'ghɔ', 'tɔm', 'ume', 'ghɨ', 'dzk'],
'weekdays_min' => ['nts', 'kpa', 'ghɔ', 'tɔm', 'ume', 'ghɨ', 'dzk'],
'months' => ['ndzɔ̀ŋɔ̀nùm', 'ndzɔ̀ŋɔ̀kƗ̀zùʔ', 'ndzɔ̀ŋɔ̀tƗ̀dʉ̀ghà', 'ndzɔ̀ŋɔ̀tǎafʉ̄ghā', 'ndzɔ̀ŋèsèe', 'ndzɔ̀ŋɔ̀nzùghò', 'ndzɔ̀ŋɔ̀dùmlo', 'ndzɔ̀ŋɔ̀kwîfɔ̀e', 'ndzɔ̀ŋɔ̀tƗ̀fʉ̀ghàdzughù', 'ndzɔ̀ŋɔ̀ghǔuwelɔ̀m', 'ndzɔ̀ŋɔ̀chwaʔàkaa wo', 'ndzɔ̀ŋèfwòo'],
'months_short' => ['nùm', 'kɨz', 'tɨd', 'taa', 'see', 'nzu', 'dum', 'fɔe', 'dzu', 'lɔm', 'kaa', 'fwo'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/agr.php 0000644 00000000517 14753612052 0010712 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/agr_PE.php';
src/Carbon/Lang/agr_PE.php 0000644 00000003115 14753612052 0011273 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - somosazucar.org libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Petsatin', 'Kupitin', 'Uyaitin', 'Tayutin', 'Kegketin', 'Tegmatin', 'Kuntutin', 'Yagkujutin', 'Daiktatin', 'Ipamtatin', 'Shinutin', 'Sakamtin'],
'months_short' => ['Pet', 'Kup', 'Uya', 'Tay', 'Keg', 'Teg', 'Kun', 'Yag', 'Dait', 'Ipam', 'Shin', 'Sak'],
'weekdays' => ['Tuntuamtin', 'Achutin', 'Kugkuktin', 'Saketin', 'Shimpitin', 'Imaptin', 'Bataetin'],
'weekdays_short' => ['Tun', 'Ach', 'Kug', 'Sak', 'Shim', 'Im', 'Bat'],
'weekdays_min' => ['Tun', 'Ach', 'Kug', 'Sak', 'Shim', 'Im', 'Bat'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 7,
'meridiem' => ['VM', 'NM'],
'year' => ':count yaya', // less reliable
'y' => ':count yaya', // less reliable
'a_year' => ':count yaya', // less reliable
'month' => ':count nantu', // less reliable
'm' => ':count nantu', // less reliable
'a_month' => ':count nantu', // less reliable
'day' => ':count nayaim', // less reliable
'd' => ':count nayaim', // less reliable
'a_day' => ':count nayaim', // less reliable
'hour' => ':count kuwiš', // less reliable
'h' => ':count kuwiš', // less reliable
'a_hour' => ':count kuwiš', // less reliable
]);
src/Carbon/Lang/ak.php 0000644 00000000516 14753612052 0010533 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ak_GH.php';
src/Carbon/Lang/ak_GH.php 0000644 00000002615 14753612052 0011113 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Sugar Labs // OLPC sugarlabs.org libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY/MM/DD',
],
'months' => ['Sanda-Ɔpɛpɔn', 'Kwakwar-Ɔgyefuo', 'Ebɔw-Ɔbenem', 'Ebɔbira-Oforisuo', 'Esusow Aketseaba-Kɔtɔnimba', 'Obirade-Ayɛwohomumu', 'Ayɛwoho-Kitawonsa', 'Difuu-Ɔsandaa', 'Fankwa-Ɛbɔ', 'Ɔbɛsɛ-Ahinime', 'Ɔberɛfɛw-Obubuo', 'Mumu-Ɔpɛnimba'],
'months_short' => ['S-Ɔ', 'K-Ɔ', 'E-Ɔ', 'E-O', 'E-K', 'O-A', 'A-K', 'D-Ɔ', 'F-Ɛ', 'Ɔ-A', 'Ɔ-O', 'M-Ɔ'],
'weekdays' => ['Kwesida', 'Dwowda', 'Benada', 'Wukuda', 'Yawda', 'Fida', 'Memeneda'],
'weekdays_short' => ['Kwe', 'Dwo', 'Ben', 'Wuk', 'Yaw', 'Fia', 'Mem'],
'weekdays_min' => ['Kwe', 'Dwo', 'Ben', 'Wuk', 'Yaw', 'Fia', 'Mem'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['AN', 'EW'],
'year' => ':count afe',
'y' => ':count afe',
'a_year' => ':count afe',
'month' => ':count bosume',
'm' => ':count bosume',
'a_month' => ':count bosume',
'day' => ':count ɛda',
'd' => ':count ɛda',
'a_day' => ':count ɛda',
]);
src/Carbon/Lang/am.php 0000644 00000000516 14753612052 0010535 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/am_ET.php';
src/Carbon/Lang/am_ET.php 0000644 00000004023 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕሪል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክቶበር', 'ኖቬምበር', 'ዲሴምበር'],
'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
'weekdays' => ['እሑድ', 'ሰኞ', 'ማክሰኞ', 'ረቡዕ', 'ሐሙስ', 'ዓርብ', 'ቅዳሜ'],
'weekdays_short' => ['እሑድ', 'ሰኞ ', 'ማክሰ', 'ረቡዕ', 'ሐሙስ', 'ዓርብ', 'ቅዳሜ'],
'weekdays_min' => ['እሑድ', 'ሰኞ ', 'ማክሰ', 'ረቡዕ', 'ሐሙስ', 'ዓርብ', 'ቅዳሜ'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ጡዋት', 'ከሰዓት'],
'year' => ':count አመት',
'y' => ':count አመት',
'a_year' => ':count አመት',
'month' => ':count ወር',
'm' => ':count ወር',
'a_month' => ':count ወር',
'week' => ':count ሳምንት',
'w' => ':count ሳምንት',
'a_week' => ':count ሳምንት',
'day' => ':count ቀን',
'd' => ':count ቀን',
'a_day' => ':count ቀን',
'hour' => ':count ሰዓት',
'h' => ':count ሰዓት',
'a_hour' => ':count ሰዓት',
'minute' => ':count ደቂቃ',
'min' => ':count ደቂቃ',
'a_minute' => ':count ደቂቃ',
'second' => ':count ሴኮንድ',
's' => ':count ሴኮንድ',
'a_second' => ':count ሴኮንድ',
'ago' => 'ከ:time በፊት',
'from_now' => 'በ:time ውስጥ',
]);
src/Carbon/Lang/an.php 0000644 00000000516 14753612052 0010536 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/an_ES.php';
src/Carbon/Lang/an_ES.php 0000644 00000003321 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Softaragones Jordi Mallach Pérez, Juan Pablo Martínez bug-glibc-locales@gnu.org, softaragones@softaragones.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['chinero', 'febrero', 'marzo', 'abril', 'mayo', 'chunyo', 'chuliol', 'agosto', 'setiembre', 'octubre', 'noviembre', 'aviento'],
'months_short' => ['chi', 'feb', 'mar', 'abr', 'may', 'chn', 'chl', 'ago', 'set', 'oct', 'nov', 'avi'],
'weekdays' => ['domingo', 'luns', 'martes', 'mierques', 'chueves', 'viernes', 'sabado'],
'weekdays_short' => ['dom', 'lun', 'mar', 'mie', 'chu', 'vie', 'sab'],
'weekdays_min' => ['dom', 'lun', 'mar', 'mie', 'chu', 'vie', 'sab'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count año',
'y' => ':count año',
'a_year' => ':count año',
'month' => ':count mes',
'm' => ':count mes',
'a_month' => ':count mes',
'week' => ':count semana',
'w' => ':count semana',
'a_week' => ':count semana',
'day' => ':count día',
'd' => ':count día',
'a_day' => ':count día',
'hour' => ':count reloch', // less reliable
'h' => ':count reloch', // less reliable
'a_hour' => ':count reloch', // less reliable
'minute' => ':count minuto',
'min' => ':count minuto',
'a_minute' => ':count minuto',
'second' => ':count segundo',
's' => ':count segundo',
'a_second' => ':count segundo',
]);
src/Carbon/Lang/anp.php 0000644 00000000517 14753612052 0010717 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/anp_IN.php';
src/Carbon/Lang/anp_IN.php 0000644 00000002761 14753612052 0011310 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bhashaghar@googlegroups.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितंबर', 'अक्टूबर', 'नवंबर', 'दिसंबर"'],
'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितंबर', 'अक्टूबर', 'नवंबर', 'दिसंबर'],
'weekdays' => ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'बृहस्पतिवार', 'शुक्रवार', 'शनिवार'],
'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
]);
src/Carbon/Lang/ar.php 0000644 00000010743 14753612052 0010545 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Atef Ben Ali (atefBB)
* - Ibrahim AshShohail
* - MLTDev
* - Mohamed Sabil (mohamedsabil83)
* - Yazan Alnugnugh (yazan-alnugnugh)
*/
$months = [
'يناير',
'فبراير',
'مارس',
'أبريل',
'مايو',
'يونيو',
'يوليو',
'أغسطس',
'سبتمبر',
'أكتوبر',
'نوفمبر',
'ديسمبر',
];
return [
'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'ago' => 'منذ :time',
'from_now' => ':time من الآن',
'after' => 'بعد :time',
'before' => 'قبل :time',
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدًا(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['ح', 'اث', 'ثل', 'أر', 'خم', 'ج', 'س'],
'list' => ['، ', ' و '],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم عند الساعة] LT',
'nextDay' => '[غدًا عند الساعة] LT',
'nextWeek' => 'dddd [عند الساعة] LT',
'lastDay' => '[أمس عند الساعة] LT',
'lastWeek' => 'dddd [عند الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
'weekend' => [5, 6],
];
src/Carbon/Lang/ar_AE.php 0000644 00000003715 14753612052 0011113 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت '],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_BH.php 0000644 00000003714 14753612052 0011116 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_DJ.php 0000644 00000000451 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_DZ.php 0000644 00000010656 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Authors:
* - Josh Soref
* - Noureddine LOUAHEDJ
* - JD Isaacks
* - Atef Ben Ali (atefBB)
* - Mohamed Sabil (mohamedsabil83)
*/
$months = [
'جانفي',
'فيفري',
'مارس',
'أفريل',
'ماي',
'جوان',
'جويلية',
'أوت',
'سبتمبر',
'أكتوبر',
'نوفمبر',
'ديسمبر',
];
return [
'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'ago' => 'منذ :time',
'from_now' => 'في :time',
'after' => 'بعد :time',
'before' => 'قبل :time',
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['أح', 'إث', 'ثلا', 'أر', 'خم', 'جم', 'سب'],
'list' => ['، ', ' و '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 4,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم على الساعة] LT',
'nextDay' => '[غدا على الساعة] LT',
'nextWeek' => 'dddd [على الساعة] LT',
'lastDay' => '[أمس على الساعة] LT',
'lastWeek' => 'dddd [على الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
];
src/Carbon/Lang/ar_EG.php 0000644 00000003714 14753612052 0011120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_EH.php 0000644 00000000451 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_ER.php 0000644 00000000451 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_IL.php 0000644 00000000451 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_IN.php 0000644 00000002132 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/ar_IQ.php 0000644 00000004076 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_JO.php 0000644 00000004076 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_KM.php 0000644 00000000451 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_KW.php 0000644 00000012375 14753612052 0011151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Authors:
* - Josh Soref
* - Nusret Parlak
* - JD Isaacks
* - Atef Ben Ali (atefBB)
* - Mohamed Sabil (mohamedsabil83)
* - Abdullah-Alhariri
*/
$months = [
'يناير',
'فبراير',
'مارس',
'أبريل',
'ماي',
'يونيو',
'يوليوز',
'غشت',
'شتنبر',
'أكتوبر',
'نونبر',
'دجنبر',
];
return [
'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'ago' => 'منذ :time',
'from_now' => 'في :time',
'after' => 'بعد :time',
'before' => 'قبل :time',
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'list' => ['، ', ' و '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم على الساعة] LT',
'nextDay' => '[غدا على الساعة] LT',
'nextWeek' => 'dddd [على الساعة] LT',
'lastDay' => '[أمس على الساعة] LT',
'lastWeek' => 'dddd [على الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
'weekend' => [5, 6],
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
];
src/Carbon/Lang/ar_LB.php 0000644 00000004076 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_LY.php 0000644 00000010100 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Atef Ben Ali (atefBB)
* - Ibrahim AshShohail
* - MLTDev
*/
$months = [
'يناير',
'فبراير',
'مارس',
'أبريل',
'مايو',
'يونيو',
'يوليو',
'أغسطس',
'سبتمبر',
'أكتوبر',
'نوفمبر',
'ديسمبر',
];
return [
'year' => implode('|', [':count سنة', 'سنة', 'سنتين', ':count سنوات', ':count سنة']),
'a_year' => implode('|', [':count سنة', 'سنة', 'سنتين', ':count سنوات', ':count سنة']),
'month' => implode('|', [':count شهر', 'شهر', 'شهرين', ':count أشهر', ':count شهر']),
'a_month' => implode('|', [':count شهر', 'شهر', 'شهرين', ':count أشهر', ':count شهر']),
'week' => implode('|', [':count أسبوع', 'أسبوع', 'أسبوعين', ':count أسابيع', ':count أسبوع']),
'a_week' => implode('|', [':count أسبوع', 'أسبوع', 'أسبوعين', ':count أسابيع', ':count أسبوع']),
'day' => implode('|', [':count يوم', 'يوم', 'يومين', ':count أيام', ':count يوم']),
'a_day' => implode('|', [':count يوم', 'يوم', 'يومين', ':count أيام', ':count يوم']),
'hour' => implode('|', [':count ساعة', 'ساعة', 'ساعتين', ':count ساعات', ':count ساعة']),
'a_hour' => implode('|', [':count ساعة', 'ساعة', 'ساعتين', ':count ساعات', ':count ساعة']),
'minute' => implode('|', [':count دقيقة', 'دقيقة', 'دقيقتين', ':count دقائق', ':count دقيقة']),
'a_minute' => implode('|', [':count دقيقة', 'دقيقة', 'دقيقتين', ':count دقائق', ':count دقيقة']),
'second' => implode('|', [':count ثانية', 'ثانية', 'ثانيتين', ':count ثواني', ':count ثانية']),
'a_second' => implode('|', [':count ثانية', 'ثانية', 'ثانيتين', ':count ثواني', ':count ثانية']),
'ago' => 'منذ :time',
'from_now' => ':time من الآن',
'after' => 'بعد :time',
'before' => 'قبل :time',
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدًا(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['مرة', 'مرة', ':count مرتين', ':count مرات', ':count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['ح', 'اث', 'ثل', 'أر', 'خم', 'ج', 'س'],
'list' => ['، ', ' و '],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم عند الساعة] LT',
'nextDay' => '[غدًا عند الساعة] LT',
'nextWeek' => 'dddd [عند الساعة] LT',
'lastDay' => '[أمس عند الساعة] LT',
'lastWeek' => 'dddd [عند الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
'weekend' => [5, 6],
];
src/Carbon/Lang/ar_MA.php 0000644 00000010634 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Authors:
* - Josh Soref
* - JD Isaacks
* - Atef Ben Ali (atefBB)
* - Mohamed Sabil (mohamedsabil83)
*/
$months = [
'يناير',
'فبراير',
'مارس',
'أبريل',
'ماي',
'يونيو',
'يوليوز',
'غشت',
'شتنبر',
'أكتوبر',
'نونبر',
'دجنبر',
];
return [
'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'ago' => 'منذ :time',
'from_now' => 'في :time',
'after' => 'بعد :time',
'before' => 'قبل :time',
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'list' => ['، ', ' و '],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم على الساعة] LT',
'nextDay' => '[غدا على الساعة] LT',
'nextWeek' => 'dddd [على الساعة] LT',
'lastDay' => '[أمس على الساعة] LT',
'lastWeek' => 'dddd [على الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
'weekend' => [5, 6],
];
src/Carbon/Lang/ar_MR.php 0000644 00000000451 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_OM.php 0000644 00000003714 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_PS.php 0000644 00000002212 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_QA.php 0000644 00000003714 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_SA.php 0000644 00000012364 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Authors:
* - Josh Soref
* - JD Isaacks
* - Atef Ben Ali (atefBB)
* - Mohamed Sabil (mohamedsabil83)
* - Abdullah-Alhariri
*/
$months = [
'يناير',
'فبراير',
'مارس',
'أبريل',
'مايو',
'يونيو',
'يوليو',
'أغسطس',
'سبتمبر',
'أكتوبر',
'نوفمبر',
'ديسمبر',
];
return [
'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'ago' => 'منذ :time',
'from_now' => 'في :time',
'after' => 'بعد :time',
'before' => 'قبل :time',
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'list' => ['، ', ' و '],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم على الساعة] LT',
'nextDay' => '[غدا على الساعة] LT',
'nextWeek' => 'dddd [على الساعة] LT',
'lastDay' => '[أمس على الساعة] LT',
'lastWeek' => 'dddd [على الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
'weekend' => [5, 6],
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
];
src/Carbon/Lang/ar_SD.php 0000644 00000003714 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_SO.php 0000644 00000000451 14753612052 0011141 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_SS.php 0000644 00000002176 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/ar_SY.php 0000644 00000004076 14753612052 0011162 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'months_short' => ['كانون الثاني', 'شباط', 'آذار', 'نيسان', 'أيار', 'حزيران', 'تموز', 'آب', 'أيلول', 'تشرين الأول', 'تشرين الثاني', 'كانون الأول'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/ar_Shakl.php 0000644 00000011714 14753612052 0011666 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Abdellah Chadidi
* - Atef Ben Ali (atefBB)
* - Mohamed Sabil (mohamedsabil83)
*/
// Same for long and short
$months = [
// @TODO add shakl to months
'يناير',
'فبراير',
'مارس',
'أبريل',
'مايو',
'يونيو',
'يوليو',
'أغسطس',
'سبتمبر',
'أكتوبر',
'نوفمبر',
'ديسمبر',
];
return [
'year' => implode('|', ['{0}:count سَنَة', '{1}سَنَة', '{2}سَنَتَيْن', ']2,11[:count سَنَوَات', ']10,Inf[:count سَنَة']),
'a_year' => implode('|', ['{0}:count سَنَة', '{1}سَنَة', '{2}سَنَتَيْن', ']2,11[:count سَنَوَات', ']10,Inf[:count سَنَة']),
'month' => implode('|', ['{0}:count شَهْرَ', '{1}شَهْرَ', '{2}شَهْرَيْن', ']2,11[:count أَشْهُر', ']10,Inf[:count شَهْرَ']),
'a_month' => implode('|', ['{0}:count شَهْرَ', '{1}شَهْرَ', '{2}شَهْرَيْن', ']2,11[:count أَشْهُر', ']10,Inf[:count شَهْرَ']),
'week' => implode('|', ['{0}:count أُسْبُوع', '{1}أُسْبُوع', '{2}أُسْبُوعَيْن', ']2,11[:count أَسَابِيع', ']10,Inf[:count أُسْبُوع']),
'a_week' => implode('|', ['{0}:count أُسْبُوع', '{1}أُسْبُوع', '{2}أُسْبُوعَيْن', ']2,11[:count أَسَابِيع', ']10,Inf[:count أُسْبُوع']),
'day' => implode('|', ['{0}:count يَوْم', '{1}يَوْم', '{2}يَوْمَيْن', ']2,11[:count أَيَّام', ']10,Inf[:count يَوْم']),
'a_day' => implode('|', ['{0}:count يَوْم', '{1}يَوْم', '{2}يَوْمَيْن', ']2,11[:count أَيَّام', ']10,Inf[:count يَوْم']),
'hour' => implode('|', ['{0}:count سَاعَة', '{1}سَاعَة', '{2}سَاعَتَيْن', ']2,11[:count سَاعَات', ']10,Inf[:count سَاعَة']),
'a_hour' => implode('|', ['{0}:count سَاعَة', '{1}سَاعَة', '{2}سَاعَتَيْن', ']2,11[:count سَاعَات', ']10,Inf[:count سَاعَة']),
'minute' => implode('|', ['{0}:count دَقِيقَة', '{1}دَقِيقَة', '{2}دَقِيقَتَيْن', ']2,11[:count دَقَائِق', ']10,Inf[:count دَقِيقَة']),
'a_minute' => implode('|', ['{0}:count دَقِيقَة', '{1}دَقِيقَة', '{2}دَقِيقَتَيْن', ']2,11[:count دَقَائِق', ']10,Inf[:count دَقِيقَة']),
'second' => implode('|', ['{0}:count ثَانِيَة', '{1}ثَانِيَة', '{2}ثَانِيَتَيْن', ']2,11[:count ثَوَان', ']10,Inf[:count ثَانِيَة']),
'a_second' => implode('|', ['{0}:count ثَانِيَة', '{1}ثَانِيَة', '{2}ثَانِيَتَيْن', ']2,11[:count ثَوَان', ']10,Inf[:count ثَانِيَة']),
'ago' => 'مُنْذُ :time',
'from_now' => 'مِنَ الْآن :time',
'after' => 'بَعْدَ :time',
'before' => 'قَبْلَ :time',
// @TODO add shakl to translations below
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدًا(?:\\s+عند)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['ح', 'اث', 'ثل', 'أر', 'خم', 'ج', 'س'],
'list' => ['، ', ' و '],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم عند الساعة] LT',
'nextDay' => '[غدًا عند الساعة] LT',
'nextWeek' => 'dddd [عند الساعة] LT',
'lastDay' => '[أمس عند الساعة] LT',
'lastWeek' => 'dddd [عند الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
'weekend' => [5, 6],
];
src/Carbon/Lang/ar_TD.php 0000644 00000000451 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
]);
src/Carbon/Lang/ar_TN.php 0000644 00000010616 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Authors:
* - JD Isaacks
* - Atef Ben Ali (atefBB)
* - Mohamed Sabil (mohamedsabil83)
*/
$months = [
'جانفي',
'فيفري',
'مارس',
'أفريل',
'ماي',
'جوان',
'جويلية',
'أوت',
'سبتمبر',
'أكتوبر',
'نوفمبر',
'ديسمبر',
];
return [
'year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'a_year' => implode('|', ['{0}:count سنة', '{1}سنة', '{2}سنتين', ']2,11[:count سنوات', ']10,Inf[:count سنة']),
'month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'a_month' => implode('|', ['{0}:count شهر', '{1}شهر', '{2}شهرين', ']2,11[:count أشهر', ']10,Inf[:count شهر']),
'week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'a_week' => implode('|', ['{0}:count أسبوع', '{1}أسبوع', '{2}أسبوعين', ']2,11[:count أسابيع', ']10,Inf[:count أسبوع']),
'day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'a_day' => implode('|', ['{0}:count يوم', '{1}يوم', '{2}يومين', ']2,11[:count أيام', ']10,Inf[:count يوم']),
'hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'a_hour' => implode('|', ['{0}:count ساعة', '{1}ساعة', '{2}ساعتين', ']2,11[:count ساعات', ']10,Inf[:count ساعة']),
'minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'a_minute' => implode('|', ['{0}:count دقيقة', '{1}دقيقة', '{2}دقيقتين', ']2,11[:count دقائق', ']10,Inf[:count دقيقة']),
'second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'a_second' => implode('|', ['{0}:count ثانية', '{1}ثانية', '{2}ثانيتين', ']2,11[:count ثواني', ']10,Inf[:count ثانية']),
'ago' => 'منذ :time',
'from_now' => 'في :time',
'after' => 'بعد :time',
'before' => 'قبل :time',
'diff_now' => 'الآن',
'diff_today' => 'اليوم',
'diff_today_regexp' => 'اليوم(?:\\s+على)?(?:\\s+الساعة)?',
'diff_yesterday' => 'أمس',
'diff_yesterday_regexp' => 'أمس(?:\\s+على)?(?:\\s+الساعة)?',
'diff_tomorrow' => 'غداً',
'diff_tomorrow_regexp' => 'غدا(?:\\s+على)?(?:\\s+الساعة)?',
'diff_before_yesterday' => 'قبل الأمس',
'diff_after_tomorrow' => 'بعد غد',
'period_recurrences' => implode('|', ['{0}مرة', '{1}مرة', '{2}:count مرتين', ']2,11[:count مرات', ']10,Inf[:count مرة']),
'period_interval' => 'كل :interval',
'period_start_date' => 'من :date',
'period_end_date' => 'إلى :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['أحد', 'اثنين', 'ثلاثاء', 'أربعاء', 'خميس', 'جمعة', 'سبت'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'list' => ['، ', ' و '],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اليوم على الساعة] LT',
'nextDay' => '[غدا على الساعة] LT',
'nextWeek' => 'dddd [على الساعة] LT',
'lastDay' => '[أمس على الساعة] LT',
'lastWeek' => 'dddd [على الساعة] LT',
'sameElse' => 'L',
],
'meridiem' => ['ص', 'م'],
'weekend' => [5, 6],
];
src/Carbon/Lang/ar_YE.php 0000644 00000003656 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
* - Abdullah-Alhariri
*/
return array_replace_recursive(require __DIR__.'/ar.php', [
'formats' => [
'L' => 'DD MMM, YYYY',
],
'months' => ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر'],
'months_short' => ['ينا', 'فبر', 'مار', 'أبر', 'ماي', 'يون', 'يول', 'أغس', 'سبت', 'أكت', 'نوف', 'ديس'],
'weekdays' => ['الأحد', 'الاثنين', 'الثلاثاء', 'الأربعاء', 'الخميس', 'الجمعة', 'السبت'],
'weekdays_short' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'weekdays_min' => ['ح', 'ن', 'ث', 'ر', 'خ', 'ج', 'س'],
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰٤', '۰٥', '۰٦', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱٤', '۱٥', '۱٦', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲٤', '۲٥', '۲٦', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳٤', '۳٥', '۳٦', '۳۷', '۳۸', '۳۹', '٤۰', '٤۱', '٤۲', '٤۳', '٤٤', '٤٥', '٤٦', '٤۷', '٤۸', '٤۹', '٥۰', '٥۱', '٥۲', '٥۳', '٥٤', '٥٥', '٥٦', '٥۷', '٥۸', '٥۹', '٦۰', '٦۱', '٦۲', '٦۳', '٦٤', '٦٥', '٦٦', '٦۷', '٦۸', '٦۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷٤', '۷٥', '۷٦', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸٤', '۸٥', '۸٦', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹٤', '۹٥', '۹٦', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/as.php 0000644 00000000516 14753612052 0010543 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/as_IN.php';
src/Carbon/Lang/as_IN.php 0000644 00000004547 14753612052 0011141 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Amitakhya Phukan, Red Hat bug-glibc@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D-MM-YYYY',
],
'months' => ['জানুৱাৰী', 'ফেব্ৰুৱাৰী', 'মাৰ্চ', 'এপ্ৰিল', 'মে', 'জুন', 'জুলাই', 'আগষ্ট', 'ছেপ্তেম্বৰ', 'অক্টোবৰ', 'নৱেম্বৰ', 'ডিচেম্বৰ'],
'months_short' => ['জানু', 'ফেব্ৰু', 'মাৰ্চ', 'এপ্ৰিল', 'মে', 'জুন', 'জুলাই', 'আগ', 'সেপ্ট', 'অক্টো', 'নভে', 'ডিসে'],
'weekdays' => ['দেওবাৰ', 'সোমবাৰ', 'মঙ্গলবাৰ', 'বুধবাৰ', 'বৃহষ্পতিবাৰ', 'শুক্ৰবাৰ', 'শনিবাৰ'],
'weekdays_short' => ['দেও', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহষ্পতি', 'শুক্ৰ', 'শনি'],
'weekdays_min' => ['দেও', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহষ্পতি', 'শুক্ৰ', 'শনি'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['পূৰ্ব্বাহ্ন', 'অপৰাহ্ন'],
'year' => ':count বছৰ',
'y' => ':count বছৰ',
'a_year' => ':count বছৰ',
'month' => ':count মাহ',
'm' => ':count মাহ',
'a_month' => ':count মাহ',
'week' => ':count সপ্তাহ',
'w' => ':count সপ্তাহ',
'a_week' => ':count সপ্তাহ',
'day' => ':count বাৰ',
'd' => ':count বাৰ',
'a_day' => ':count বাৰ',
'hour' => ':count ঘণ্টা',
'h' => ':count ঘণ্টা',
'a_hour' => ':count ঘণ্টা',
'minute' => ':count মিনিট',
'min' => ':count মিনিট',
'a_minute' => ':count মিনিট',
'second' => ':count দ্বিতীয়',
's' => ':count দ্বিতীয়',
'a_second' => ':count দ্বিতীয়',
]);
src/Carbon/Lang/asa.php 0000644 00000002101 14753612052 0010674 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['icheheavo', 'ichamthi'],
'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Ijm', 'Jmo'],
'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Ijm', 'Jmo'],
'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Dec'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/ast.php 0000644 00000003676 14753612052 0010741 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Jordi Mallach jordi@gnu.org
* - Adolfo Jayme-Barrientos (fitojb)
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['de xineru', 'de febreru', 'de marzu', 'd’abril', 'de mayu', 'de xunu', 'de xunetu', 'd’agostu', 'de setiembre', 'd’ochobre', 'de payares', 'd’avientu'],
'months_short' => ['xin', 'feb', 'mar', 'abr', 'may', 'xun', 'xnt', 'ago', 'set', 'och', 'pay', 'avi'],
'weekdays' => ['domingu', 'llunes', 'martes', 'miércoles', 'xueves', 'vienres', 'sábadu'],
'weekdays_short' => ['dom', 'llu', 'mar', 'mié', 'xue', 'vie', 'sáb'],
'weekdays_min' => ['dom', 'llu', 'mar', 'mié', 'xue', 'vie', 'sáb'],
'year' => ':count añu|:count años',
'y' => ':count añu|:count años',
'a_year' => 'un añu|:count años',
'month' => ':count mes',
'm' => ':count mes',
'a_month' => 'un mes|:count mes',
'week' => ':count selmana|:count selmanes',
'w' => ':count selmana|:count selmanes',
'a_week' => 'una selmana|:count selmanes',
'day' => ':count día|:count díes',
'd' => ':count día|:count díes',
'a_day' => 'un día|:count díes',
'hour' => ':count hora|:count hores',
'h' => ':count hora|:count hores',
'a_hour' => 'una hora|:count hores',
'minute' => ':count minutu|:count minutos',
'min' => ':count minutu|:count minutos',
'a_minute' => 'un minutu|:count minutos',
'second' => ':count segundu|:count segundos',
's' => ':count segundu|:count segundos',
'a_second' => 'un segundu|:count segundos',
'ago' => 'hai :time',
'from_now' => 'en :time',
'after' => ':time dempués',
'before' => ':time enantes',
]);
src/Carbon/Lang/ast_ES.php 0000644 00000000414 14753612052 0011313 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ast.php';
src/Carbon/Lang/ayc.php 0000644 00000000517 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ayc_PE.php';
src/Carbon/Lang/ayc_PE.php 0000644 00000001763 14753612052 0011305 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - runasimipi.org libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['inïru', 'phiwriru', 'marsu', 'awrila', 'mayu', 'junyu', 'julyu', 'awustu', 'sitimri', 'uktuwri', 'nuwimri', 'risimri'],
'months_short' => ['ini', 'phi', 'mar', 'awr', 'may', 'jun', 'jul', 'awu', 'sit', 'ukt', 'nuw', 'ris'],
'weekdays' => ['tuminku', 'lunisa', 'martisa', 'mirkulisa', 'juywisa', 'wirnisa', 'sawäru'],
'weekdays_short' => ['tum', 'lun', 'mar', 'mir', 'juy', 'wir', 'saw'],
'weekdays_min' => ['tum', 'lun', 'mar', 'mir', 'juy', 'wir', 'saw'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['VM', 'NM'],
]);
src/Carbon/Lang/az.php 0000644 00000010135 14753612052 0010550 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - Kunal Marwaha
* - François B
* - JD Isaacks
* - Orxan
* - Şəhriyar İmanov
* - Baran Şengül
*/
return [
'year' => ':count il',
'a_year' => '{1}bir il|]1,Inf[:count il',
'y' => ':count il',
'month' => ':count ay',
'a_month' => '{1}bir ay|]1,Inf[:count ay',
'm' => ':count ay',
'week' => ':count həftə',
'a_week' => '{1}bir həftə|]1,Inf[:count həftə',
'w' => ':count h.',
'day' => ':count gün',
'a_day' => '{1}bir gün|]1,Inf[:count gün',
'd' => ':count g.',
'hour' => ':count saat',
'a_hour' => '{1}bir saat|]1,Inf[:count saat',
'h' => ':count saat',
'minute' => ':count d.',
'a_minute' => '{1}bir dəqiqə|]1,Inf[:count dəqiqə',
'min' => ':count dəqiqə',
'second' => ':count san.',
'a_second' => '{1}birneçə saniyə|]1,Inf[:count saniyə',
's' => ':count saniyə',
'ago' => ':time əvvəl',
'from_now' => ':time sonra',
'after' => ':time sonra',
'before' => ':time əvvəl',
'diff_now' => 'indi',
'diff_today' => 'bugün',
'diff_today_regexp' => 'bugün(?:\\s+saat)?',
'diff_yesterday' => 'dünən',
'diff_tomorrow' => 'sabah',
'diff_tomorrow_regexp' => 'sabah(?:\\s+saat)?',
'diff_before_yesterday' => 'srağagün',
'diff_after_tomorrow' => 'birisi gün',
'period_recurrences' => ':count dəfədən bir',
'period_interval' => 'hər :interval',
'period_start_date' => ':date tarixindən başlayaraq',
'period_end_date' => ':date tarixinədək',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[bugün saat] LT',
'nextDay' => '[sabah saat] LT',
'nextWeek' => '[gələn həftə] dddd [saat] LT',
'lastDay' => '[dünən] LT',
'lastWeek' => '[keçən həftə] dddd [saat] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
if ($number === 0) { // special case for zero
return "$number-ıncı";
}
static $suffixes = [
1 => '-inci',
5 => '-inci',
8 => '-inci',
70 => '-inci',
80 => '-inci',
2 => '-nci',
7 => '-nci',
20 => '-nci',
50 => '-nci',
3 => '-üncü',
4 => '-üncü',
100 => '-üncü',
6 => '-ncı',
9 => '-uncu',
10 => '-uncu',
30 => '-uncu',
60 => '-ıncı',
90 => '-ıncı',
];
$lastDigit = $number % 10;
return $number.($suffixes[$lastDigit] ?? $suffixes[$number % 100 - $lastDigit] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
},
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'gecə';
}
if ($hour < 12) {
return 'səhər';
}
if ($hour < 17) {
return 'gündüz';
}
return 'axşam';
},
'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
'months_short' => ['yan', 'fev', 'mar', 'apr', 'may', 'iyn', 'iyl', 'avq', 'sen', 'okt', 'noy', 'dek'],
'months_standalone' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr'],
'weekdays' => ['bazar', 'bazar ertəsi', 'çərşənbə axşamı', 'çərşənbə', 'cümə axşamı', 'cümə', 'şənbə'],
'weekdays_short' => ['baz', 'bze', 'çax', 'çər', 'cax', 'cüm', 'şən'],
'weekdays_min' => ['bz', 'be', 'ça', 'çə', 'ca', 'cü', 'şə'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' və '],
];
src/Carbon/Lang/az_AZ.php 0000644 00000001375 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Pablo Saratxaga pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/az.php', [
'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avq', 'Sen', 'Okt', 'Noy', 'Dek'],
'weekdays' => ['bazar günü', 'bazar ertəsi', 'çərşənbə axşamı', 'çərşənbə', 'cümə axşamı', 'cümə', 'şənbə'],
'weekdays_short' => ['baz', 'ber', 'çax', 'çər', 'cax', 'cüm', 'şnb'],
'weekdays_min' => ['baz', 'ber', 'çax', 'çər', 'cax', 'cüm', 'şnb'],
]);
src/Carbon/Lang/az_Cyrl.php 0000644 00000002267 14753612052 0011550 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/az.php', [
'weekdays' => ['базар', 'базар ертәси', 'чәршәнбә ахшамы', 'чәршәнбә', 'ҹүмә ахшамы', 'ҹүмә', 'шәнбә'],
'weekdays_short' => ['Б.', 'Б.Е.', 'Ч.А.', 'Ч.', 'Ҹ.А.', 'Ҹ.', 'Ш.'],
'weekdays_min' => ['Б.', 'Б.Е.', 'Ч.А.', 'Ч.', 'Ҹ.А.', 'Ҹ.', 'Ш.'],
'months' => ['јанвар', 'феврал', 'март', 'апрел', 'май', 'ијун', 'ијул', 'август', 'сентјабр', 'октјабр', 'нојабр', 'декабр'],
'months_short' => ['јан', 'фев', 'мар', 'апр', 'май', 'ијн', 'ијл', 'авг', 'сен', 'окт', 'ној', 'дек'],
'months_standalone' => ['Јанвар', 'Феврал', 'Март', 'Апрел', 'Май', 'Ијун', 'Ијул', 'Август', 'Сентјабр', 'Октјабр', 'Нојабр', 'Декабр'],
'meridiem' => ['а', 'п'],
]);
src/Carbon/Lang/az_IR.php 0000644 00000004064 14753612052 0011146 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Mousa Moradi mousamk@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'OY/OM/OD',
],
'months' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مئی', 'ژوئن', 'جولای', 'آقۇست', 'سپتامبر', 'اوْکتوْبر', 'نوْوامبر', 'دسامبر'],
'months_short' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مئی', 'ژوئن', 'جولای', 'آقۇست', 'سپتامبر', 'اوْکتوْبر', 'نوْوامبر', 'دسامبر'],
'weekdays' => ['یکشنبه', 'دوشنبه', 'سهشنبه', 'چارشنبه', 'جۆمعه آخشامی', 'جۆمعه', 'شنبه'],
'weekdays_short' => ['یکشنبه', 'دوشنبه', 'سهشنبه', 'چارشنبه', 'جۆمعه آخشامی', 'جۆمعه', 'شنبه'],
'weekdays_min' => ['یکشنبه', 'دوشنبه', 'سهشنبه', 'چارشنبه', 'جۆمعه آخشامی', 'جۆمعه', 'شنبه'],
'first_day_of_week' => 6,
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰۴', '۰۵', '۰۶', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱۴', '۱۵', '۱۶', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲۴', '۲۵', '۲۶', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳۴', '۳۵', '۳۶', '۳۷', '۳۸', '۳۹', '۴۰', '۴۱', '۴۲', '۴۳', '۴۴', '۴۵', '۴۶', '۴۷', '۴۸', '۴۹', '۵۰', '۵۱', '۵۲', '۵۳', '۵۴', '۵۵', '۵۶', '۵۷', '۵۸', '۵۹', '۶۰', '۶۱', '۶۲', '۶۳', '۶۴', '۶۵', '۶۶', '۶۷', '۶۸', '۶۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷۴', '۷۵', '۷۶', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸۴', '۸۵', '۸۶', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹۴', '۹۵', '۹۶', '۹۷', '۹۸', '۹۹'],
]);
src/Carbon/Lang/az_Latn.php 0000644 00000002334 14753612052 0011530 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/az.php', [
'meridiem' => ['a', 'p'],
'weekdays' => ['bazar', 'bazar ertəsi', 'çərşənbə axşamı', 'çərşənbə', 'cümə axşamı', 'cümə', 'şənbə'],
'weekdays_short' => ['B.', 'B.E.', 'Ç.A.', 'Ç.', 'C.A.', 'C.', 'Ş.'],
'weekdays_min' => ['B.', 'B.E.', 'Ç.A.', 'Ç.', 'C.A.', 'C.', 'Ş.'],
'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
'months_short' => ['yan', 'fev', 'mar', 'apr', 'may', 'iyn', 'iyl', 'avq', 'sen', 'okt', 'noy', 'dek'],
'months_standalone' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'İyun', 'İyul', 'Avqust', 'Sentyabr', 'Oktyabr', 'Noyabr', 'Dekabr'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'D MMMM YYYY, dddd HH:mm',
],
]);
src/Carbon/Lang/bas.php 0000644 00000002460 14753612052 0010705 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['I bikɛ̂glà', 'I ɓugajɔp'],
'weekdays' => ['ŋgwà nɔ̂y', 'ŋgwà njaŋgumba', 'ŋgwà ûm', 'ŋgwà ŋgê', 'ŋgwà mbɔk', 'ŋgwà kɔɔ', 'ŋgwà jôn'],
'weekdays_short' => ['nɔy', 'nja', 'uum', 'ŋge', 'mbɔ', 'kɔɔ', 'jon'],
'weekdays_min' => ['nɔy', 'nja', 'uum', 'ŋge', 'mbɔ', 'kɔɔ', 'jon'],
'months' => ['Kɔndɔŋ', 'Màcɛ̂l', 'Màtùmb', 'Màtop', 'M̀puyɛ', 'Hìlòndɛ̀', 'Njèbà', 'Hìkaŋ', 'Dìpɔ̀s', 'Bìòôm', 'Màyɛsèp', 'Lìbuy li ńyèe'],
'months_short' => ['kɔn', 'mac', 'mat', 'mto', 'mpu', 'hil', 'nje', 'hik', 'dip', 'bio', 'may', 'liɓ'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'second' => ':count móndî', // less reliable
's' => ':count móndî', // less reliable
'a_second' => ':count móndî', // less reliable
]);
src/Carbon/Lang/be.php 0000644 00000021641 14753612052 0010530 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Carbon\CarbonInterface;
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return (($number % 10 == 1) && ($number % 100 != 11)) ? 0 : ((($number % 10 >= 2) && ($number % 10 <= 4) && (($number % 100 < 10) || ($number % 100 >= 20))) ? 1 : 2);
}, 'be');
}
// @codeCoverageIgnoreEnd
/*
* Authors:
* - Josh Soref
* - SobakaSlava
* - François B
* - Serhan Apaydın
* - JD Isaacks
* - AbadonnaAbbys
* - Siomkin Alexander
*/
return [
'year' => ':count год|:count гады|:count гадоў',
'a_year' => '{1}год|:count год|:count гады|:count гадоў',
'y' => ':count год|:count гады|:count гадоў',
'month' => ':count месяц|:count месяцы|:count месяцаў',
'a_month' => '{1}месяц|:count месяц|:count месяцы|:count месяцаў',
'm' => ':count месяц|:count месяцы|:count месяцаў',
'week' => ':count тыдзень|:count тыдні|:count тыдняў',
'a_week' => '{1}тыдзень|:count тыдзень|:count тыдні|:count тыдняў',
'w' => ':count тыдзень|:count тыдні|:count тыдняў',
'day' => ':count дзень|:count дні|:count дзён',
'a_day' => '{1}дзень|:count дзень|:count дні|:count дзён',
'd' => ':count дн',
'hour' => ':count гадзіну|:count гадзіны|:count гадзін',
'a_hour' => '{1}гадзіна|:count гадзіна|:count гадзіны|:count гадзін',
'h' => ':count гадзіна|:count гадзіны|:count гадзін',
'minute' => ':count хвіліна|:count хвіліны|:count хвілін',
'a_minute' => '{1}хвіліна|:count хвіліна|:count хвіліны|:count хвілін',
'min' => ':count хв',
'second' => ':count секунда|:count секунды|:count секунд',
'a_second' => '{1}некалькі секунд|:count секунда|:count секунды|:count секунд',
's' => ':count сек',
'hour_ago' => ':count гадзіну|:count гадзіны|:count гадзін',
'a_hour_ago' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
'h_ago' => ':count гадзіну|:count гадзіны|:count гадзін',
'minute_ago' => ':count хвіліну|:count хвіліны|:count хвілін',
'a_minute_ago' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
'min_ago' => ':count хвіліну|:count хвіліны|:count хвілін',
'second_ago' => ':count секунду|:count секунды|:count секунд',
'a_second_ago' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
's_ago' => ':count секунду|:count секунды|:count секунд',
'hour_from_now' => ':count гадзіну|:count гадзіны|:count гадзін',
'a_hour_from_now' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
'h_from_now' => ':count гадзіну|:count гадзіны|:count гадзін',
'minute_from_now' => ':count хвіліну|:count хвіліны|:count хвілін',
'a_minute_from_now' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
'min_from_now' => ':count хвіліну|:count хвіліны|:count хвілін',
'second_from_now' => ':count секунду|:count секунды|:count секунд',
'a_second_from_now' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
's_from_now' => ':count секунду|:count секунды|:count секунд',
'hour_after' => ':count гадзіну|:count гадзіны|:count гадзін',
'a_hour_after' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
'h_after' => ':count гадзіну|:count гадзіны|:count гадзін',
'minute_after' => ':count хвіліну|:count хвіліны|:count хвілін',
'a_minute_after' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
'min_after' => ':count хвіліну|:count хвіліны|:count хвілін',
'second_after' => ':count секунду|:count секунды|:count секунд',
'a_second_after' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
's_after' => ':count секунду|:count секунды|:count секунд',
'hour_before' => ':count гадзіну|:count гадзіны|:count гадзін',
'a_hour_before' => '{1}гадзіну|:count гадзіну|:count гадзіны|:count гадзін',
'h_before' => ':count гадзіну|:count гадзіны|:count гадзін',
'minute_before' => ':count хвіліну|:count хвіліны|:count хвілін',
'a_minute_before' => '{1}хвіліну|:count хвіліну|:count хвіліны|:count хвілін',
'min_before' => ':count хвіліну|:count хвіліны|:count хвілін',
'second_before' => ':count секунду|:count секунды|:count секунд',
'a_second_before' => '{1}некалькі секунд|:count секунду|:count секунды|:count секунд',
's_before' => ':count секунду|:count секунды|:count секунд',
'ago' => ':time таму',
'from_now' => 'праз :time',
'after' => ':time пасля',
'before' => ':time да',
'diff_now' => 'цяпер',
'diff_today' => 'Сёння',
'diff_today_regexp' => 'Сёння(?:\\s+ў)?',
'diff_yesterday' => 'учора',
'diff_yesterday_regexp' => 'Учора(?:\\s+ў)?',
'diff_tomorrow' => 'заўтра',
'diff_tomorrow_regexp' => 'Заўтра(?:\\s+ў)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY г.',
'LLL' => 'D MMMM YYYY г., HH:mm',
'LLLL' => 'dddd, D MMMM YYYY г., HH:mm',
],
'calendar' => [
'sameDay' => '[Сёння ў] LT',
'nextDay' => '[Заўтра ў] LT',
'nextWeek' => '[У] dddd [ў] LT',
'lastDay' => '[Учора ў] LT',
'lastWeek' => static fn (CarbonInterface $current) => match ($current->dayOfWeek) {
1, 2, 4 => '[У мінулы] dddd [ў] LT',
default => '[У мінулую] dddd [ў] LT',
},
'sameElse' => 'L',
],
'ordinal' => static fn ($number, $period) => match ($period) {
'M', 'd', 'DDD', 'w', 'W' => ($number % 10 === 2 || $number % 10 === 3) &&
($number % 100 !== 12 && $number % 100 !== 13) ? $number.'-і' : $number.'-ы',
'D' => $number.'-га',
default => $number,
},
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'ночы';
}
if ($hour < 12) {
return 'раніцы';
}
if ($hour < 17) {
return 'дня';
}
return 'вечара';
},
'months' => ['студзеня', 'лютага', 'сакавіка', 'красавіка', 'траўня', 'чэрвеня', 'ліпеня', 'жніўня', 'верасня', 'кастрычніка', 'лістапада', 'снежня'],
'months_standalone' => ['студзень', 'люты', 'сакавік', 'красавік', 'травень', 'чэрвень', 'ліпень', 'жнівень', 'верасень', 'кастрычнік', 'лістапад', 'снежань'],
'months_short' => ['студ', 'лют', 'сак', 'крас', 'трав', 'чэрв', 'ліп', 'жнів', 'вер', 'каст', 'ліст', 'снеж'],
'months_regexp' => '/(DD?o?\.?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => ['нядзелю', 'панядзелак', 'аўторак', 'сераду', 'чацвер', 'пятніцу', 'суботу'],
'weekdays_standalone' => ['нядзеля', 'панядзелак', 'аўторак', 'серада', 'чацвер', 'пятніца', 'субота'],
'weekdays_short' => ['нд', 'пн', 'ат', 'ср', 'чц', 'пт', 'сб'],
'weekdays_min' => ['нд', 'пн', 'ат', 'ср', 'чц', 'пт', 'сб'],
'weekdays_regexp' => '/\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' і '],
'months_short_standalone' => ['сту', 'лют', 'сак', 'кра', 'май', 'чэр', 'ліп', 'жні', 'вер', 'кас', 'ліс', 'сне'],
];
src/Carbon/Lang/be_BY.php 0000644 00000002051 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/be.php', [
'months' => ['студзеня', 'лютага', 'сакавіка', 'красавіка', 'мая', 'чэрвеня', 'ліпеня', 'жніўня', 'верасня', 'кастрычніка', 'лістапада', 'снежня'],
'months_short' => ['сту', 'лют', 'сак', 'кра', 'мая', 'чэр', 'ліп', 'жні', 'вер', 'кас', 'ліс', 'сне'],
'weekdays' => ['Нядзеля', 'Панядзелак', 'Аўторак', 'Серада', 'Чацвер', 'Пятніца', 'Субота'],
'weekdays_short' => ['Няд', 'Пан', 'Аўт', 'Срд', 'Чцв', 'Пят', 'Суб'],
'weekdays_min' => ['Няд', 'Пан', 'Аўт', 'Срд', 'Чцв', 'Пят', 'Суб'],
]);
src/Carbon/Lang/be_BY@latin.php 0000644 00000001766 14753612052 0012260 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['studzienia', 'lutaha', 'sakavika', 'krasavika', 'maja', 'červienia', 'lipienia', 'žniŭnia', 'vieraśnia', 'kastryčnika', 'listapada', 'śniežnia'],
'months_short' => ['Stu', 'Lut', 'Sak', 'Kra', 'Maj', 'Čer', 'Lip', 'Žni', 'Vie', 'Kas', 'Lis', 'Śni'],
'weekdays' => ['Niadziela', 'Paniadziełak', 'Aŭtorak', 'Sierada', 'Čaćvier', 'Piatnica', 'Subota'],
'weekdays_short' => ['Nia', 'Pan', 'Aŭt', 'Sie', 'Čać', 'Pia', 'Sub'],
'weekdays_min' => ['Nia', 'Pan', 'Aŭt', 'Sie', 'Čać', 'Pia', 'Sub'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/bem.php 0000644 00000000517 14753612052 0010704 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/bem_ZM.php';
src/Carbon/Lang/bem_ZM.php 0000644 00000003272 14753612052 0011313 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - ANLoc Martin Benjamin locales@africanlocalization.net
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'MM/DD/YYYY',
],
'months' => ['Januari', 'Februari', 'Machi', 'Epreo', 'Mei', 'Juni', 'Julai', 'Ogasti', 'Septemba', 'Oktoba', 'Novemba', 'Disemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Epr', 'Mei', 'Jun', 'Jul', 'Oga', 'Sep', 'Okt', 'Nov', 'Dis'],
'weekdays' => ['Pa Mulungu', 'Palichimo', 'Palichibuli', 'Palichitatu', 'Palichine', 'Palichisano', 'Pachibelushi'],
'weekdays_short' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
'weekdays_min' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['uluchelo', 'akasuba'],
'year' => 'myaka :count',
'y' => 'myaka :count',
'a_year' => 'myaka :count',
'month' => 'myeshi :count',
'm' => 'myeshi :count',
'a_month' => 'myeshi :count',
'week' => 'umulungu :count',
'w' => 'umulungu :count',
'a_week' => 'umulungu :count',
'day' => 'inshiku :count',
'd' => 'inshiku :count',
'a_day' => 'inshiku :count',
'hour' => 'awala :count',
'h' => 'awala :count',
'a_hour' => 'awala :count',
'minute' => 'miniti :count',
'min' => 'miniti :count',
'a_minute' => 'miniti :count',
'second' => 'sekondi :count',
's' => 'sekondi :count',
'a_second' => 'sekondi :count',
]);
src/Carbon/Lang/ber.php 0000644 00000000517 14753612052 0010711 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ber_DZ.php';
src/Carbon/Lang/ber_DZ.php 0000644 00000001777 14753612052 0011317 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Pablo Saratxaga pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avq', 'Sen', 'Okt', 'Noy', 'Dek'],
'weekdays' => ['bazar günü', 'birinci gün', 'ikinci gün', 'üçüncü gün', 'dördüncü gün', 'beşinci gün', 'altıncı gün'],
'weekdays_short' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
'weekdays_min' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/ber_MA.php 0000644 00000001777 14753612052 0011277 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Pablo Saratxaga pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['yanvar', 'fevral', 'mart', 'aprel', 'may', 'iyun', 'iyul', 'avqust', 'sentyabr', 'oktyabr', 'noyabr', 'dekabr'],
'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avq', 'Sen', 'Okt', 'Noy', 'Dek'],
'weekdays' => ['bazar günü', 'birinci gün', 'ikinci gün', 'üçüncü gün', 'dördüncü gün', 'beşinci gün', 'altıncı gün'],
'weekdays_short' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
'weekdays_min' => ['baz', 'bir', 'iki', 'üçü', 'dör', 'beş', 'alt'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/bez.php 0000644 00000002376 14753612052 0010726 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['pamilau', 'pamunyi'],
'weekdays' => ['pa mulungu', 'pa shahuviluha', 'pa hivili', 'pa hidatu', 'pa hitayi', 'pa hihanu', 'pa shahulembela'],
'weekdays_short' => ['Mul', 'Vil', 'Hiv', 'Hid', 'Hit', 'Hih', 'Lem'],
'weekdays_min' => ['Mul', 'Vil', 'Hiv', 'Hid', 'Hit', 'Hih', 'Lem'],
'months' => ['pa mwedzi gwa hutala', 'pa mwedzi gwa wuvili', 'pa mwedzi gwa wudatu', 'pa mwedzi gwa wutai', 'pa mwedzi gwa wuhanu', 'pa mwedzi gwa sita', 'pa mwedzi gwa saba', 'pa mwedzi gwa nane', 'pa mwedzi gwa tisa', 'pa mwedzi gwa kumi', 'pa mwedzi gwa kumi na moja', 'pa mwedzi gwa kumi na mbili'],
'months_short' => ['Hut', 'Vil', 'Dat', 'Tai', 'Han', 'Sit', 'Sab', 'Nan', 'Tis', 'Kum', 'Kmj', 'Kmb'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/bg.php 0000644 00000007764 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - Serhan Apaydın
* - JD Isaacks
* - Glavić
*/
use Carbon\CarbonInterface;
return [
'year' => ':count година|:count години',
'a_year' => 'година|:count години',
'y' => ':count година|:count години',
'month' => ':count месец|:count месеца',
'a_month' => 'месец|:count месеца',
'm' => ':count месец|:count месеца',
'week' => ':count седмица|:count седмици',
'a_week' => 'седмица|:count седмици',
'w' => ':count седмица|:count седмици',
'day' => ':count ден|:count дни',
'a_day' => 'ден|:count дни',
'd' => ':count ден|:count дни',
'hour' => ':count час|:count часа',
'a_hour' => 'час|:count часа',
'h' => ':count час|:count часа',
'minute' => ':count минута|:count минути',
'a_minute' => 'минута|:count минути',
'min' => ':count минута|:count минути',
'second' => ':count секунда|:count секунди',
'a_second' => 'няколко секунди|:count секунди',
's' => ':count секунда|:count секунди',
'ago' => 'преди :time',
'from_now' => 'след :time',
'after' => 'след :time',
'before' => 'преди :time',
'diff_now' => 'сега',
'diff_today' => 'Днес',
'diff_today_regexp' => 'Днес(?:\\s+в)?',
'diff_yesterday' => 'вчера',
'diff_yesterday_regexp' => 'Вчера(?:\\s+в)?',
'diff_tomorrow' => 'утре',
'diff_tomorrow_regexp' => 'Утре(?:\\s+в)?',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'D.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY H:mm',
'LLLL' => 'dddd, D MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[Днес в] LT',
'nextDay' => '[Утре в] LT',
'nextWeek' => 'dddd [в] LT',
'lastDay' => '[Вчера в] LT',
'lastWeek' => static fn (CarbonInterface $current) => match ($current->dayOfWeek) {
0, 3, 6 => '[В изминалата] dddd [в] LT',
default => '[В изминалия] dddd [в] LT',
},
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
$lastDigit = $number % 10;
$last2Digits = $number % 100;
if ($number === 0) {
return "$number-ев";
}
if ($last2Digits === 0) {
return "$number-ен";
}
if ($last2Digits > 10 && $last2Digits < 20) {
return "$number-ти";
}
if ($lastDigit === 1) {
return "$number-ви";
}
if ($lastDigit === 2) {
return "$number-ри";
}
if ($lastDigit === 7 || $lastDigit === 8) {
return "$number-ми";
}
return "$number-ти";
},
'months' => ['януари', 'февруари', 'март', 'април', 'май', 'юни', 'юли', 'август', 'септември', 'октомври', 'ноември', 'декември'],
'months_short' => ['яну', 'фев', 'мар', 'апр', 'май', 'юни', 'юли', 'авг', 'сеп', 'окт', 'ное', 'дек'],
'weekdays' => ['неделя', 'понеделник', 'вторник', 'сряда', 'четвъртък', 'петък', 'събота'],
'weekdays_short' => ['нед', 'пон', 'вто', 'сря', 'чет', 'пет', 'съб'],
'weekdays_min' => ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' и '],
'meridiem' => ['преди обяд', 'следобед'],
];
src/Carbon/Lang/bg_BG.php 0000644 00000000413 14753612052 0011074 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/bg.php';
src/Carbon/Lang/bhb.php 0000644 00000000517 14753612052 0010674 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/bhb_IN.php';
src/Carbon/Lang/bhb_IN.php 0000644 00000001745 14753612052 0011266 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Samsung Electronics Co., Ltd. alexey.merzlyakov@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
'weekdays' => ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
'weekdays_short' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
'weekdays_min' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/bho.php 0000644 00000000517 14753612052 0010711 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/bho_IN.php';
src/Carbon/Lang/bho_IN.php 0000644 00000004374 14753612052 0011304 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bhashaghar@googlegroups.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर"'],
'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर"'],
'weekdays' => ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरुवार', 'शुक्रवार', 'शनिवार'],
'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'],
'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरु', 'शुक्र', 'शनि'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
'hour' => ':count मौसम',
'h' => ':count मौसम',
'a_hour' => ':count मौसम',
'minute' => ':count कला',
'min' => ':count कला',
'a_minute' => ':count कला',
'second' => ':count सोमार',
's' => ':count सोमार',
'a_second' => ':count सोमार',
'year' => ':count साल',
'y' => ':count साल',
'a_year' => ':count साल',
'month' => ':count महिना',
'm' => ':count महिना',
'a_month' => ':count महिना',
'week' => ':count सप्ताह',
'w' => ':count सप्ताह',
'a_week' => ':count सप्ताह',
'day' => ':count दिन',
'd' => ':count दिन',
'a_day' => ':count दिन',
]);
src/Carbon/Lang/bi.php 0000644 00000000516 14753612052 0010532 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/bi_VU.php';
src/Carbon/Lang/bi_VU.php 0000644 00000003575 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Samsung Electronics Co., Ltd. akhilesh.k@samsung.com & maninder1.s@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'formats' => [
'L' => 'dddd DD MMM YYYY',
],
'months' => ['jenuware', 'febwari', 'maj', 'epril', 'mei', 'jun', 'julae', 'ogis', 'septemba', 'oktoba', 'novemba', 'disemba'],
'months_short' => ['jen', 'feb', 'maj', 'epr', 'mei', 'jun', 'jul', 'ogi', 'sep', 'okt', 'nov', 'dis'],
'weekdays' => ['sande', 'mande', 'maj', 'wota', 'fraede', 'sarede'],
'weekdays_short' => ['san', 'man', 'maj', 'wot', 'fra', 'sar'],
'weekdays_min' => ['san', 'man', 'maj', 'wot', 'fra', 'sar'],
'year' => ':count seven', // less reliable
'y' => ':count seven', // less reliable
'a_year' => ':count seven', // less reliable
'month' => ':count mi', // less reliable
'm' => ':count mi', // less reliable
'a_month' => ':count mi', // less reliable
'week' => ':count sarede', // less reliable
'w' => ':count sarede', // less reliable
'a_week' => ':count sarede', // less reliable
'day' => ':count betde', // less reliable
'd' => ':count betde', // less reliable
'a_day' => ':count betde', // less reliable
'hour' => ':count klok', // less reliable
'h' => ':count klok', // less reliable
'a_hour' => ':count klok', // less reliable
'minute' => ':count smol', // less reliable
'min' => ':count smol', // less reliable
'a_minute' => ':count smol', // less reliable
'second' => ':count tu', // less reliable
's' => ':count tu', // less reliable
'a_second' => ':count tu', // less reliable
]);
src/Carbon/Lang/bm.php 0000644 00000004702 14753612052 0010537 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Estelle Comment
*/
return [
'year' => 'san :count',
'a_year' => '{1}san kelen|san :count',
'y' => 'san :count',
'month' => 'kalo :count',
'a_month' => '{1}kalo kelen|kalo :count',
'm' => 'k. :count',
'week' => 'dɔgɔkun :count',
'a_week' => 'dɔgɔkun kelen',
'w' => 'd. :count',
'day' => 'tile :count',
'd' => 't. :count',
'a_day' => '{1}tile kelen|tile :count',
'hour' => 'lɛrɛ :count',
'a_hour' => '{1}lɛrɛ kelen|lɛrɛ :count',
'h' => 'l. :count',
'minute' => 'miniti :count',
'a_minute' => '{1}miniti kelen|miniti :count',
'min' => 'm. :count',
'second' => 'sekondi :count',
'a_second' => '{1}sanga dama dama|sekondi :count',
's' => 'sek. :count',
'ago' => 'a bɛ :time bɔ',
'from_now' => ':time kɔnɔ',
'diff_today' => 'Bi',
'diff_yesterday' => 'Kunu',
'diff_yesterday_regexp' => 'Kunu(?:\\s+lɛrɛ)?',
'diff_tomorrow' => 'Sini',
'diff_tomorrow_regexp' => 'Sini(?:\\s+lɛrɛ)?',
'diff_today_regexp' => 'Bi(?:\\s+lɛrɛ)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'MMMM [tile] D [san] YYYY',
'LLL' => 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',
'LLLL' => 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm',
],
'calendar' => [
'sameDay' => '[Bi lɛrɛ] LT',
'nextDay' => '[Sini lɛrɛ] LT',
'nextWeek' => 'dddd [don lɛrɛ] LT',
'lastDay' => '[Kunu lɛrɛ] LT',
'lastWeek' => 'dddd [tɛmɛnen lɛrɛ] LT',
'sameElse' => 'L',
],
'months' => ['Zanwuyekalo', 'Fewuruyekalo', 'Marisikalo', 'Awirilikalo', 'Mɛkalo', 'Zuwɛnkalo', 'Zuluyekalo', 'Utikalo', 'Sɛtanburukalo', 'ɔkutɔburukalo', 'Nowanburukalo', 'Desanburukalo'],
'months_short' => ['Zan', 'Few', 'Mar', 'Awi', 'Mɛ', 'Zuw', 'Zul', 'Uti', 'Sɛt', 'ɔku', 'Now', 'Des'],
'weekdays' => ['Kari', 'Ntɛnɛn', 'Tarata', 'Araba', 'Alamisa', 'Juma', 'Sibiri'],
'weekdays_short' => ['Kar', 'Ntɛ', 'Tar', 'Ara', 'Ala', 'Jum', 'Sib'],
'weekdays_min' => ['Ka', 'Nt', 'Ta', 'Ar', 'Al', 'Ju', 'Si'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' ni '],
];
src/Carbon/Lang/bn.php 0000644 00000011157 14753612052 0010542 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - Shakib Hossain
* - Raju
* - Aniruddha Adhikary
* - JD Isaacks
* - Saiful Islam
* - Faisal Islam
*/
return [
'year' => ':count বছর',
'a_year' => 'এক বছর|:count বছর',
'y' => '১ বছর|:count বছর',
'month' => ':count মাস',
'a_month' => 'এক মাস|:count মাস',
'm' => '১ মাস|:count মাস',
'week' => ':count সপ্তাহ',
'a_week' => '১ সপ্তাহ|:count সপ্তাহ',
'w' => '১ সপ্তাহ|:count সপ্তাহ',
'day' => ':count দিন',
'a_day' => 'এক দিন|:count দিন',
'd' => '১ দিন|:count দিন',
'hour' => ':count ঘন্টা',
'a_hour' => 'এক ঘন্টা|:count ঘন্টা',
'h' => '১ ঘন্টা|:count ঘন্টা',
'minute' => ':count মিনিট',
'a_minute' => 'এক মিনিট|:count মিনিট',
'min' => '১ মিনিট|:count মিনিট',
'second' => ':count সেকেন্ড',
'a_second' => 'কয়েক সেকেন্ড|:count সেকেন্ড',
's' => '১ সেকেন্ড|:count সেকেন্ড',
'ago' => ':time আগে',
'from_now' => ':time পরে',
'after' => ':time পরে',
'before' => ':time আগে',
'diff_now' => 'এখন',
'diff_today' => 'আজ',
'diff_yesterday' => 'গতকাল',
'diff_tomorrow' => 'আগামীকাল',
'period_recurrences' => ':count বার|:count বার',
'period_interval' => 'প্রতি :interval',
'period_start_date' => ':date থেকে',
'period_end_date' => ':date পর্যন্ত',
'formats' => [
'LT' => 'A Oh:Om সময়',
'LTS' => 'A Oh:Om:Os সময়',
'L' => 'OD/OM/OY',
'LL' => 'OD MMMM OY',
'LLL' => 'OD MMMM OY, A Oh:Om সময়',
'LLLL' => 'dddd, OD MMMM OY, A Oh:Om সময়',
],
'calendar' => [
'sameDay' => '[আজ] LT',
'nextDay' => '[আগামীকাল] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[গতকাল] LT',
'lastWeek' => '[গত] dddd, LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'রাত';
}
if ($hour < 10) {
return 'সকাল';
}
if ($hour < 17) {
return 'দুপুর';
}
if ($hour < 20) {
return 'বিকাল';
}
return 'রাত';
},
'months' => ['জানুয়ারী', 'ফেব্রুয়ারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
'months_short' => ['জানু', 'ফেব', 'মার্চ', 'এপ্র', 'মে', 'জুন', 'জুল', 'আগ', 'সেপ্ট', 'অক্টো', 'নভে', 'ডিসে'],
'weekdays' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'],
'weekdays_short' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'],
'weekdays_min' => ['রবি', 'সোম', 'মঙ্গ', 'বুধ', 'বৃহঃ', 'শুক্র', 'শনি'],
'list' => [', ', ' এবং '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'weekdays_standalone' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহষ্পতিবার', 'শুক্রবার', 'শনিবার'],
'weekdays_min_standalone' => ['রঃ', 'সোঃ', 'মঃ', 'বুঃ', 'বৃঃ', 'শুঃ', 'শনি'],
'months_short_standalone' => ['জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
'alt_numbers' => ['০', '১', '২', '৩', '৪', '৫', '৬', '৭', '৮', '৯'],
];
src/Carbon/Lang/bn_BD.php 0000644 00000002745 14753612052 0011112 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ankur Group, Taneem Ahmed, Jamil Ahmed
*/
return array_replace_recursive(require __DIR__.'/bn.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
'months_short' => ['জানু', 'ফেব', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
'weekdays' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'],
'weekdays_short' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহঃ', 'শুক্র', 'শনি'],
'weekdays_min' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহঃ', 'শুক্র', 'শনি'],
'first_day_of_week' => 5,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/bn_IN.php 0000644 00000003030 14753612052 0011117 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/bn.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['জানুয়ারী', 'ফেব্রুয়ারী', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
'months_short' => ['জানু', 'ফেব', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'],
'weekdays' => ['রবিবার', 'সোমবার', 'মঙ্গলবার', 'বুধবার', 'বৃহস্পতিবার', 'শুক্রবার', 'শনিবার'],
'weekdays_short' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'],
'weekdays_min' => ['রবি', 'সোম', 'মঙ্গল', 'বুধ', 'বৃহস্পতি', 'শুক্র', 'শনি'],
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/bo.php 0000644 00000010120 14753612052 0010530 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - JD Isaacks
*/
return [
'year' => '{1}ལོ་གཅིག|]1,Inf[:count ལོ',
'month' => '{1}ཟླ་བ་གཅིག|]1,Inf[:count ཟླ་བ',
'week' => ':count བདུན་ཕྲག',
'day' => '{1}ཉིན་གཅིག|]1,Inf[:count ཉིན་',
'hour' => '{1}ཆུ་ཚོད་གཅིག|]1,Inf[:count ཆུ་ཚོད',
'minute' => '{1}སྐར་མ་གཅིག|]1,Inf[:count སྐར་མ',
'second' => '{1}ལམ་སང|]1,Inf[:count སྐར་ཆ།',
'ago' => ':time སྔན་ལ',
'from_now' => ':time ལ་',
'diff_yesterday' => 'ཁ་སང',
'diff_today' => 'དི་རིང',
'diff_tomorrow' => 'སང་ཉིན',
'formats' => [
'LT' => 'A h:mm',
'LTS' => 'A h:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm',
],
'calendar' => [
'sameDay' => '[དི་རིང] LT',
'nextDay' => '[སང་ཉིན] LT',
'nextWeek' => '[བདུན་ཕྲག་རྗེས་མ], LT',
'lastDay' => '[ཁ་སང] LT',
'lastWeek' => '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'མཚན་མོ';
}
if ($hour < 10) {
return 'ཞོགས་ཀས';
}
if ($hour < 17) {
return 'ཉིན་གུང';
}
if ($hour < 20) {
return 'དགོང་དག';
}
return 'མཚན་མོ';
},
'months' => ['ཟླ་བ་དང་པོ', 'ཟླ་བ་གཉིས་པ', 'ཟླ་བ་གསུམ་པ', 'ཟླ་བ་བཞི་པ', 'ཟླ་བ་ལྔ་པ', 'ཟླ་བ་དྲུག་པ', 'ཟླ་བ་བདུན་པ', 'ཟླ་བ་བརྒྱད་པ', 'ཟླ་བ་དགུ་པ', 'ཟླ་བ་བཅུ་པ', 'ཟླ་བ་བཅུ་གཅིག་པ', 'ཟླ་བ་བཅུ་གཉིས་པ'],
'months_short' => ['ཟླ་བ་དང་པོ', 'ཟླ་བ་གཉིས་པ', 'ཟླ་བ་གསུམ་པ', 'ཟླ་བ་བཞི་པ', 'ཟླ་བ་ལྔ་པ', 'ཟླ་བ་དྲུག་པ', 'ཟླ་བ་བདུན་པ', 'ཟླ་བ་བརྒྱད་པ', 'ཟླ་བ་དགུ་པ', 'ཟླ་བ་བཅུ་པ', 'ཟླ་བ་བཅུ་གཅིག་པ', 'ཟླ་བ་བཅུ་གཉིས་པ'],
'weekdays' => ['གཟའ་ཉི་མ་', 'གཟའ་ཟླ་བ་', 'གཟའ་མིག་དམར་', 'གཟའ་ལྷག་པ་', 'གཟའ་ཕུར་བུ', 'གཟའ་པ་སངས་', 'གཟའ་སྤེན་པ་'],
'weekdays_short' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ', 'པ་སངས་', 'སྤེན་པ་'],
'weekdays_min' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ', 'པ་སངས་', 'སྤེན་པ་'],
'list' => [', ', ' ཨནད་ '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'months_standalone' => ['ཟླ་བ་དང་པོ་', 'ཟླ་བ་གཉིས་པ་', 'ཟླ་བ་གསུམ་པ་', 'ཟླ་བ་བཞི་པ་', 'ཟླ་བ་ལྔ་པ་', 'ཟླ་བ་དྲུག་པ་', 'ཟླ་བ་བདུན་པ་', 'ཟླ་བ་བརྒྱད་པ་', 'ཟླ་བ་དགུ་པ་', 'ཟླ་བ་བཅུ་པ་', 'ཟླ་བ་བཅུ་གཅིག་པ་', 'ཟླ་བ་བཅུ་གཉིས་པ་'],
];
src/Carbon/Lang/bo_CN.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/bo.php';
src/Carbon/Lang/bo_IN.php 0000644 00000004777 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/bo.php', [
'meridiem' => ['སྔ་དྲོ་', 'ཕྱི་དྲོ་'],
'weekdays' => ['གཟའ་ཉི་མ་', 'གཟའ་ཟླ་བ་', 'གཟའ་མིག་དམར་', 'གཟའ་ལྷག་པ་', 'གཟའ་ཕུར་བུ་', 'གཟའ་པ་སངས་', 'གཟའ་སྤེན་པ་'],
'weekdays_short' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ་', 'པ་སངས་', 'སྤེན་པ་'],
'weekdays_min' => ['ཉི་མ་', 'ཟླ་བ་', 'མིག་དམར་', 'ལྷག་པ་', 'ཕུར་བུ་', 'པ་སངས་', 'སྤེན་པ་'],
'months' => ['ཟླ་བ་དང་པོ', 'ཟླ་བ་གཉིས་པ', 'ཟླ་བ་གསུམ་པ', 'ཟླ་བ་བཞི་པ', 'ཟླ་བ་ལྔ་པ', 'ཟླ་བ་དྲུག་པ', 'ཟླ་བ་བདུན་པ', 'ཟླ་བ་བརྒྱད་པ', 'ཟླ་བ་དགུ་པ', 'ཟླ་བ་བཅུ་པ', 'ཟླ་བ་བཅུ་གཅིག་པ', 'ཟླ་བ་བཅུ་གཉིས་པ'],
'months_short' => ['ཟླ་༡', 'ཟླ་༢', 'ཟླ་༣', 'ཟླ་༤', 'ཟླ་༥', 'ཟླ་༦', 'ཟླ་༧', 'ཟླ་༨', 'ཟླ་༩', 'ཟླ་༡༠', 'ཟླ་༡༡', 'ཟླ་༡༢'],
'months_standalone' => ['ཟླ་བ་དང་པོ་', 'ཟླ་བ་གཉིས་པ་', 'ཟླ་བ་གསུམ་པ་', 'ཟླ་བ་བཞི་པ་', 'ཟླ་བ་ལྔ་པ་', 'ཟླ་བ་དྲུག་པ་', 'ཟླ་བ་བདུན་པ་', 'ཟླ་བ་བརྒྱད་པ་', 'ཟླ་བ་དགུ་པ་', 'ཟླ་བ་བཅུ་པ་', 'ཟླ་བ་བཅུ་གཅིག་པ་', 'ཟླ་བ་བཅུ་གཉིས་པ་'],
'weekend' => [0, 0],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'YYYY-MM-DD',
'LL' => 'YYYY ལོའི་MMMཚེས་D',
'LLL' => 'སྤྱི་ལོ་YYYY MMMMའི་ཚེས་D h:mm a',
'LLLL' => 'YYYY MMMMའི་ཚེས་D, dddd h:mm a',
],
]);
src/Carbon/Lang/br.php 0000644 00000005352 14753612052 0010546 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Serhan Apaydın
* - JD Isaacks
*/
return [
'year' => '{1}:count bloaz|{3,4,5,9}:count bloaz|[0,Inf[:count vloaz',
'a_year' => '{1}ur bloaz|{3,4,5,9}:count bloaz|[0,Inf[:count vloaz',
'month' => '{1}:count miz|{2}:count viz|[0,Inf[:count miz',
'a_month' => '{1}ur miz|{2}:count viz|[0,Inf[:count miz',
'week' => ':count sizhun',
'a_week' => '{1}ur sizhun|:count sizhun',
'day' => '{1}:count devezh|{2}:count zevezh|[0,Inf[:count devezh',
'a_day' => '{1}un devezh|{2}:count zevezh|[0,Inf[:count devezh',
'hour' => ':count eur',
'a_hour' => '{1}un eur|:count eur',
'minute' => '{1}:count vunutenn|{2}:count vunutenn|[0,Inf[:count munutenn',
'a_minute' => '{1}ur vunutenn|{2}:count vunutenn|[0,Inf[:count munutenn',
'second' => ':count eilenn',
'a_second' => '{1}un nebeud segondennoù|[0,Inf[:count eilenn',
'ago' => ':time \'zo',
'from_now' => 'a-benn :time',
'diff_now' => 'bremañ',
'diff_today' => 'Hiziv',
'diff_today_regexp' => 'Hiziv(?:\\s+da)?',
'diff_yesterday' => 'decʼh',
'diff_yesterday_regexp' => 'Dec\'h(?:\\s+da)?',
'diff_tomorrow' => 'warcʼhoazh',
'diff_tomorrow_regexp' => 'Warc\'hoazh(?:\\s+da)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D [a viz] MMMM YYYY',
'LLL' => 'D [a viz] MMMM YYYY HH:mm',
'LLLL' => 'dddd, D [a viz] MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Hiziv da] LT',
'nextDay' => '[Warc\'hoazh da] LT',
'nextWeek' => 'dddd [da] LT',
'lastDay' => '[Dec\'h da] LT',
'lastWeek' => 'dddd [paset da] LT',
'sameElse' => 'L',
],
'ordinal' => static fn ($number) => $number.($number === 1 ? 'añ' : 'vet'),
'months' => ['Genver', 'C\'hwevrer', 'Meurzh', 'Ebrel', 'Mae', 'Mezheven', 'Gouere', 'Eost', 'Gwengolo', 'Here', 'Du', 'Kerzu'],
'months_short' => ['Gen', 'C\'hwe', 'Meu', 'Ebr', 'Mae', 'Eve', 'Gou', 'Eos', 'Gwe', 'Her', 'Du', 'Ker'],
'weekdays' => ['Sul', 'Lun', 'Meurzh', 'Merc\'her', 'Yaou', 'Gwener', 'Sadorn'],
'weekdays_short' => ['Sul', 'Lun', 'Meu', 'Mer', 'Yao', 'Gwe', 'Sad'],
'weekdays_min' => ['Su', 'Lu', 'Me', 'Mer', 'Ya', 'Gw', 'Sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' hag '],
'meridiem' => ['A.M.', 'G.M.'],
'y' => ':count bl.',
'd' => ':count d',
'h' => ':count e',
'min' => ':count min',
's' => ':count s',
];
src/Carbon/Lang/br_FR.php 0000644 00000000413 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/br.php';
src/Carbon/Lang/brx.php 0000644 00000000517 14753612052 0010734 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/brx_IN.php';
src/Carbon/Lang/brx_IN.php 0000644 00000003060 14753612052 0011316 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat Pune bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'M/D/YY',
],
'months' => ['जानुवारी', 'फेब्रुवारी', 'मार्स', 'एफ्रिल', 'मे', 'जुन', 'जुलाइ', 'आगस्थ', 'सेबथेज्ब़र', 'अखथबर', 'नबेज्ब़र', 'दिसेज्ब़र'],
'months_short' => ['जानुवारी', 'फेब्रुवारी', 'मार्स', 'एप्रिल', 'मे', 'जुन', 'जुलाइ', 'आगस्थ', 'सेबथेज्ब़र', 'अखथबर', 'नबेज्ब़र', 'दिसेज्ब़र'],
'weekdays' => ['रबिबार', 'सोबार', 'मंगलबार', 'बुदबार', 'बिसथिबार', 'सुखुरबार', 'सुनिबार'],
'weekdays_short' => ['रबि', 'सम', 'मंगल', 'बुद', 'बिसथि', 'सुखुर', 'सुनि'],
'weekdays_min' => ['रबि', 'सम', 'मंगल', 'बुद', 'बिसथि', 'सुखुर', 'सुनि'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['फुं.', 'बेलासे.'],
]);
src/Carbon/Lang/bs.php 0000644 00000006575 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bokideckonja
* - Josh Soref
* - François B
* - shaishavgandhi05
* - Serhan Apaydın
* - JD Isaacks
* - Ademir Šehić
*/
use Carbon\CarbonInterface;
return [
'year' => ':count godina|:count godine|:count godina',
'y' => ':count godina|:count godine|:count godina',
'month' => ':count mjesec|:count mjeseca|:count mjeseci',
'm' => ':count mjesec|:count mjeseca|:count mjeseci',
'week' => ':count sedmica|:count sedmice|:count sedmica',
'w' => ':count sedmica|:count sedmice|:count sedmica',
'day' => ':count dan|:count dana|:count dana',
'd' => ':count dan|:count dana|:count dana',
'hour' => ':count sat|:count sata|:count sati',
'h' => ':count sat|:count sata|:count sati',
'minute' => ':count minut|:count minuta|:count minuta',
'min' => ':count minut|:count minuta|:count minuta',
'second' => ':count sekund|:count sekunda|:count sekundi',
's' => ':count sekund|:count sekunda|:count sekundi',
'ago' => 'prije :time',
'from_now' => 'za :time',
'after' => 'nakon :time',
'before' => ':time ranije',
'year_ago' => ':count godinu|:count godine|:count godina',
'year_from_now' => ':count godinu|:count godine|:count godina',
'week_ago' => ':count sedmicu|:count sedmice|:count sedmica',
'week_from_now' => ':count sedmicu|:count sedmice|:count sedmica',
'diff_now' => 'sada',
'diff_today' => 'danas',
'diff_today_regexp' => 'danas(?:\\s+u)?',
'diff_yesterday' => 'jučer',
'diff_yesterday_regexp' => 'jučer(?:\\s+u)?',
'diff_tomorrow' => 'sutra',
'diff_tomorrow_regexp' => 'sutra(?:\\s+u)?',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY H:mm',
'LLLL' => 'dddd, D. MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[danas u] LT',
'nextDay' => '[sutra u] LT',
'nextWeek' => static fn (CarbonInterface $current) => match ($current->dayOfWeek) {
0 => '[u] [nedjelju] [u] LT',
3 => '[u] [srijedu] [u] LT',
6 => '[u] [subotu] [u] LT',
default => '[u] dddd [u] LT',
},
'lastDay' => '[jučer u] LT',
'lastWeek' => static fn (CarbonInterface $current) => match ($current->dayOfWeek) {
0, 3 => '[prošlu] dddd [u] LT',
6 => '[prošle] [subote] [u] LT',
default => '[prošli] dddd [u] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['januar', 'februar', 'mart', 'april', 'maj', 'juni', 'juli', 'august', 'septembar', 'oktobar', 'novembar', 'decembar'],
'months_short' => ['jan.', 'feb.', 'mar.', 'apr.', 'maj.', 'jun.', 'jul.', 'aug.', 'sep.', 'okt.', 'nov.', 'dec.'],
'weekdays' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
'weekdays_min' => ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' i '],
'meridiem' => ['prijepodne', 'popodne'],
];
src/Carbon/Lang/bs_BA.php 0000644 00000000413 14753612052 0011102 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/bs.php';
src/Carbon/Lang/bs_Cyrl.php 0000644 00000002426 14753612052 0011537 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/bs.php', [
'meridiem' => ['пре подне', 'поподне'],
'weekdays' => ['недјеља', 'понедјељак', 'уторак', 'сриједа', 'четвртак', 'петак', 'субота'],
'weekdays_short' => ['нед', 'пон', 'уто', 'сри', 'чет', 'пет', 'суб'],
'weekdays_min' => ['нед', 'пон', 'уто', 'сри', 'чет', 'пет', 'суб'],
'months' => ['јануар', 'фебруар', 'март', 'април', 'мај', 'јуни', 'јули', 'аугуст', 'септембар', 'октобар', 'новембар', 'децембар'],
'months_short' => ['јан', 'феб', 'мар', 'апр', 'мај', 'јун', 'јул', 'ауг', 'сеп', 'окт', 'нов', 'дец'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D.M.YYYY.',
'LL' => 'DD.MM.YYYY.',
'LLL' => 'DD. MMMM YYYY. HH:mm',
'LLLL' => 'dddd, DD. MMMM YYYY. HH:mm',
],
]);
src/Carbon/Lang/bs_Latn.php 0000644 00000000451 14753612052 0011520 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/bs.php', [
]);
src/Carbon/Lang/byn.php 0000644 00000000517 14753612052 0010731 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/byn_ER.php';
src/Carbon/Lang/byn_ER.php 0000644 00000002475 14753612052 0011324 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ልደትሪ', 'ካብኽብቲ', 'ክብላ', 'ፋጅኺሪ', 'ክቢቅሪ', 'ምኪኤል ትጓ̅ኒሪ', 'ኰርኩ', 'ማርያም ትሪ', 'ያኸኒ መሳቅለሪ', 'መተሉ', 'ምኪኤል መሽወሪ', 'ተሕሳስሪ'],
'months_short' => ['ልደት', 'ካብኽ', 'ክብላ', 'ፋጅኺ', 'ክቢቅ', 'ም/ት', 'ኰር', 'ማርያ', 'ያኸኒ', 'መተሉ', 'ም/ም', 'ተሕሳ'],
'weekdays' => ['ሰንበር ቅዳዅ', 'ሰኑ', 'ሰሊጝ', 'ለጓ ወሪ ለብዋ', 'ኣምድ', 'ኣርብ', 'ሰንበር ሽጓዅ'],
'weekdays_short' => ['ሰ/ቅ', 'ሰኑ', 'ሰሊጝ', 'ለጓ', 'ኣምድ', 'ኣርብ', 'ሰ/ሽ'],
'weekdays_min' => ['ሰ/ቅ', 'ሰኑ', 'ሰሊጝ', 'ለጓ', 'ኣምድ', 'ኣርብ', 'ሰ/ሽ'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ፋዱስ ጃብ', 'ፋዱስ ደምቢ'],
]);
src/Carbon/Lang/ca.php 0000644 00000010645 14753612052 0010527 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - mestremuten
* - François B
* - Marc Ordinas i Llopis
* - Pere Orga
* - JD Isaacks
* - Quentí
* - Víctor Díaz
* - Xavi
* - qcardona
*/
use Carbon\CarbonInterface;
return [
'year' => ':count any|:count anys',
'a_year' => 'un any|:count anys',
'y' => ':count any|:count anys',
'month' => ':count mes|:count mesos',
'a_month' => 'un mes|:count mesos',
'm' => ':count mes|:count mesos',
'week' => ':count setmana|:count setmanes',
'a_week' => 'una setmana|:count setmanes',
'w' => ':count setmana|:count setmanes',
'day' => ':count dia|:count dies',
'a_day' => 'un dia|:count dies',
'd' => ':count d',
'hour' => ':count hora|:count hores',
'a_hour' => 'una hora|:count hores',
'h' => ':count h',
'minute' => ':count minut|:count minuts',
'a_minute' => 'un minut|:count minuts',
'min' => ':count min',
'second' => ':count segon|:count segons',
'a_second' => 'uns segons|:count segons',
's' => ':count s',
'ago' => 'fa :time',
'from_now' => 'd\'aquí a :time',
'after' => ':time després',
'before' => ':time abans',
'diff_now' => 'ara mateix',
'diff_today' => 'avui',
'diff_today_regexp' => 'avui(?:\\s+a)?(?:\\s+les)?',
'diff_yesterday' => 'ahir',
'diff_yesterday_regexp' => 'ahir(?:\\s+a)?(?:\\s+les)?',
'diff_tomorrow' => 'demà',
'diff_tomorrow_regexp' => 'demà(?:\\s+a)?(?:\\s+les)?',
'diff_before_yesterday' => 'abans d\'ahir',
'diff_after_tomorrow' => 'demà passat',
'period_recurrences' => ':count cop|:count cops',
'period_interval' => 'cada :interval',
'period_start_date' => 'de :date',
'period_end_date' => 'fins a :date',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM [de] YYYY',
'LLL' => 'D MMMM [de] YYYY [a les] H:mm',
'LLLL' => 'dddd D MMMM [de] YYYY [a les] H:mm',
],
'calendar' => [
'sameDay' => static function (CarbonInterface $current) {
return '[avui a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
},
'nextDay' => static function (CarbonInterface $current) {
return '[demà a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
},
'nextWeek' => static function (CarbonInterface $current) {
return 'dddd [a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
},
'lastDay' => static function (CarbonInterface $current) {
return '[ahir a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
},
'lastWeek' => static function (CarbonInterface $current) {
return '[el] dddd [passat a '.($current->hour !== 1 ? 'les' : 'la').'] LT';
},
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return $number.(
($period === 'w' || $period === 'W') ? 'a' : (
($number === 1) ? 'r' : (
($number === 2) ? 'n' : (
($number === 3) ? 'r' : (
($number === 4) ? 't' : 'è'
)
)
)
)
);
},
'months' => ['de gener', 'de febrer', 'de març', 'd\'abril', 'de maig', 'de juny', 'de juliol', 'd\'agost', 'de setembre', 'd\'octubre', 'de novembre', 'de desembre'],
'months_standalone' => ['gener', 'febrer', 'març', 'abril', 'maig', 'juny', 'juliol', 'agost', 'setembre', 'octubre', 'novembre', 'desembre'],
'months_short' => ['de gen.', 'de febr.', 'de març', 'd\'abr.', 'de maig', 'de juny', 'de jul.', 'd\'ag.', 'de set.', 'd\'oct.', 'de nov.', 'de des.'],
'months_short_standalone' => ['gen.', 'febr.', 'març', 'abr.', 'maig', 'juny', 'jul.', 'ag.', 'set.', 'oct.', 'nov.', 'des.'],
'months_regexp' => '/(D[oD]?[\s,]+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => ['diumenge', 'dilluns', 'dimarts', 'dimecres', 'dijous', 'divendres', 'dissabte'],
'weekdays_short' => ['dg.', 'dl.', 'dt.', 'dc.', 'dj.', 'dv.', 'ds.'],
'weekdays_min' => ['dg', 'dl', 'dt', 'dc', 'dj', 'dv', 'ds'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' i '],
'meridiem' => ['a. m.', 'p. m.'],
];
src/Carbon/Lang/ca_AD.php 0000644 00000000451 14753612052 0011065 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ca.php', [
]);
src/Carbon/Lang/ca_ES.php 0000644 00000000413 14753612052 0011106 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ca.php';
src/Carbon/Lang/ca_ES_Valencia.php 0000644 00000001121 14753612052 0012705 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return PluralizationRules::get($number, 'ca');
}, 'ca_ES_Valencia');
}
// @codeCoverageIgnoreEnd
return array_replace_recursive(require __DIR__.'/ca.php', [
]);
src/Carbon/Lang/ca_FR.php 0000644 00000000451 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ca.php', [
]);
src/Carbon/Lang/ca_IT.php 0000644 00000000451 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ca.php', [
]);
src/Carbon/Lang/ccp.php 0000644 00000004711 14753612052 0010706 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'weekdays' => ['𑄢𑄧𑄝𑄨𑄝𑄢𑄴', '𑄥𑄧𑄟𑄴𑄝𑄢𑄴', '𑄟𑄧𑄁𑄉𑄧𑄣𑄴𑄝𑄢𑄴', '𑄝𑄪𑄖𑄴𑄝𑄢𑄴', '𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴𑄝𑄢𑄴', '𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴𑄝𑄢𑄴', '𑄥𑄧𑄚𑄨𑄝𑄢𑄴'],
'weekdays_short' => ['𑄢𑄧𑄝𑄨', '𑄥𑄧𑄟𑄴', '𑄟𑄧𑄁𑄉𑄧𑄣𑄴', '𑄝𑄪𑄖𑄴', '𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴', '𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴', '𑄥𑄧𑄚𑄨'],
'weekdays_min' => ['𑄢𑄧𑄝𑄨', '𑄥𑄧𑄟𑄴', '𑄟𑄧𑄁𑄉𑄧𑄣𑄴', '𑄝𑄪𑄖𑄴', '𑄝𑄳𑄢𑄨𑄥𑄪𑄛𑄴', '𑄥𑄪𑄇𑄴𑄇𑄮𑄢𑄴', '𑄥𑄧𑄚𑄨'],
'months' => ['𑄎𑄚𑄪𑄠𑄢𑄨', '𑄜𑄬𑄛𑄴𑄝𑄳𑄢𑄪𑄠𑄢𑄨', '𑄟𑄢𑄴𑄌𑄧', '𑄃𑄬𑄛𑄳𑄢𑄨𑄣𑄴', '𑄟𑄬', '𑄎𑄪𑄚𑄴', '𑄎𑄪𑄣𑄭', '𑄃𑄉𑄧𑄌𑄴𑄑𑄴', '𑄥𑄬𑄛𑄴𑄑𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄃𑄧𑄇𑄴𑄑𑄬𑄝𑄧𑄢𑄴', '𑄚𑄧𑄞𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄓𑄨𑄥𑄬𑄟𑄴𑄝𑄧𑄢𑄴'],
'months_short' => ['𑄎𑄚𑄪', '𑄜𑄬𑄛𑄴', '𑄟𑄢𑄴𑄌𑄧', '𑄃𑄬𑄛𑄳𑄢𑄨𑄣𑄴', '𑄟𑄬', '𑄎𑄪𑄚𑄴', '𑄎𑄪𑄣𑄭', '𑄃𑄉𑄧𑄌𑄴𑄑𑄴', '𑄥𑄬𑄛𑄴𑄑𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄃𑄧𑄇𑄴𑄑𑄮𑄝𑄧𑄢𑄴', '𑄚𑄧𑄞𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄓𑄨𑄥𑄬𑄟𑄴𑄝𑄢𑄴'],
'months_short_standalone' => ['𑄎𑄚𑄪𑄠𑄢𑄨', '𑄜𑄬𑄛𑄴𑄝𑄳𑄢𑄪𑄠𑄢𑄨', '𑄟𑄢𑄴𑄌𑄧', '𑄃𑄬𑄛𑄳𑄢𑄨𑄣𑄴', '𑄟𑄬', '𑄎𑄪𑄚𑄴', '𑄎𑄪𑄣𑄭', '𑄃𑄉𑄧𑄌𑄴𑄑𑄴', '𑄥𑄬𑄛𑄴𑄑𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄃𑄧𑄇𑄴𑄑𑄮𑄝𑄧𑄢𑄴', '𑄚𑄧𑄞𑄬𑄟𑄴𑄝𑄧𑄢𑄴', '𑄓𑄨𑄥𑄬𑄟𑄴𑄝𑄧𑄢𑄴'],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM, YYYY h:mm a',
'LLLL' => 'dddd, D MMMM, YYYY h:mm a',
],
'first_day_of_week' => 0,
]);
src/Carbon/Lang/ccp_IN.php 0000644 00000000503 14753612052 0011267 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ccp.php', [
'weekend' => [0, 0],
]);
src/Carbon/Lang/ce.php 0000644 00000000516 14753612052 0010527 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ce_RU.php';
src/Carbon/Lang/ce_RU.php 0000644 00000003462 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - ANCHR
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY.DD.MM',
],
'months' => ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'],
'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
'weekdays' => ['КӀиранан де', 'Оршотан де', 'Шинарин де', 'Кхаарин де', 'Еарин де', 'ПӀераскан де', 'Шот де'],
'weekdays_short' => ['КӀ', 'Ор', 'Ши', 'Кх', 'Еа', 'ПӀ', 'Шо'],
'weekdays_min' => ['КӀ', 'Ор', 'Ши', 'Кх', 'Еа', 'ПӀ', 'Шо'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count шо',
'y' => ':count шо',
'a_year' => ':count шо',
'month' => ':count бутт',
'm' => ':count бутт',
'a_month' => ':count бутт',
'week' => ':count кӏира',
'w' => ':count кӏира',
'a_week' => ':count кӏира',
'day' => ':count де',
'd' => ':count де',
'a_day' => ':count де',
'hour' => ':count сахьт',
'h' => ':count сахьт',
'a_hour' => ':count сахьт',
'minute' => ':count минот',
'min' => ':count минот',
'a_minute' => ':count минот',
'second' => ':count секунд',
's' => ':count секунд',
'a_second' => ':count секунд',
]);
src/Carbon/Lang/cgg.php 0000644 00000002367 14753612052 0010706 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'weekdays' => ['Sande', 'Orwokubanza', 'Orwakabiri', 'Orwakashatu', 'Orwakana', 'Orwakataano', 'Orwamukaaga'],
'weekdays_short' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
'weekdays_min' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
'months' => ['Okwokubanza', 'Okwakabiri', 'Okwakashatu', 'Okwakana', 'Okwakataana', 'Okwamukaaga', 'Okwamushanju', 'Okwamunaana', 'Okwamwenda', 'Okwaikumi', 'Okwaikumi na kumwe', 'Okwaikumi na ibiri'],
'months_short' => ['KBZ', 'KBR', 'KST', 'KKN', 'KTN', 'KMK', 'KMS', 'KMN', 'KMW', 'KKM', 'KNK', 'KNB'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'day' => ':count ruhanga', // less reliable
'd' => ':count ruhanga', // less reliable
'a_day' => ':count ruhanga', // less reliable
]);
src/Carbon/Lang/chr.php 0000644 00000000517 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/chr_US.php';
src/Carbon/Lang/chr_US.php 0000644 00000004323 14753612052 0011323 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Cherokee Nation Joseph Erb josepherb7@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'MM/DD/YYYY',
],
'months' => ['ᎤᏃᎸᏔᏅ', 'ᎧᎦᎵ', 'ᎠᏅᏱ', 'ᎧᏬᏂ', 'ᎠᏂᏍᎬᏘ', 'ᏕᎭᎷᏱ', 'ᎫᏰᏉᏂ', 'ᎦᎶᏂ', 'ᏚᎵᏍᏗ', 'ᏚᏂᏅᏗ', 'ᏅᏓᏕᏆ', 'ᎥᏍᎩᏱ'],
'months_short' => ['ᎤᏃ', 'ᎧᎦ', 'ᎠᏅ', 'ᎧᏬ', 'ᎠᏂ', 'ᏕᎭ', 'ᎫᏰ', 'ᎦᎶ', 'ᏚᎵ', 'ᏚᏂ', 'ᏅᏓ', 'ᎥᏍ'],
'weekdays' => ['ᎤᎾᏙᏓᏆᏍᎬ', 'ᎤᎾᏙᏓᏉᏅᎯ', 'ᏔᎵᏁᎢᎦ', 'ᏦᎢᏁᎢᎦ', 'ᏅᎩᏁᎢᎦ', 'ᏧᎾᎩᎶᏍᏗ', 'ᎤᎾᏙᏓᏈᏕᎾ'],
'weekdays_short' => ['ᏆᏍᎬ', 'ᏉᏅᎯ', 'ᏔᎵᏁ', 'ᏦᎢᏁ', 'ᏅᎩᏁ', 'ᏧᎾᎩ', 'ᏈᏕᎾ'],
'weekdays_min' => ['ᏆᏍᎬ', 'ᏉᏅᎯ', 'ᏔᎵᏁ', 'ᏦᎢᏁ', 'ᏅᎩᏁ', 'ᏧᎾᎩ', 'ᏈᏕᎾ'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ᏌᎾᎴ', 'ᏒᎯᏱᎢᏗᏢ', 'ꮜꮎꮄ', 'ꮢꭿᏹꭲꮧꮲ'],
'second' => ':count ᏐᎢ', // less reliable
's' => ':count ᏐᎢ', // less reliable
'a_second' => ':count ᏐᎢ', // less reliable
'year' => ':count ᏑᏕᏘᏴᏓ',
'y' => ':count ᏑᏕᏘᏴᏓ',
'a_year' => ':count ᏑᏕᏘᏴᏓ',
'month' => ':count ᏏᏅᏙ',
'm' => ':count ᏏᏅᏙ',
'a_month' => ':count ᏏᏅᏙ',
'week' => ':count ᏑᎾᏙᏓᏆᏍᏗ',
'w' => ':count ᏑᎾᏙᏓᏆᏍᏗ',
'a_week' => ':count ᏑᎾᏙᏓᏆᏍᏗ',
'day' => ':count ᎢᎦ',
'd' => ':count ᎢᎦ',
'a_day' => ':count ᎢᎦ',
'hour' => ':count ᏑᏟᎶᏛ',
'h' => ':count ᏑᏟᎶᏛ',
'a_hour' => ':count ᏑᏟᎶᏛ',
'minute' => ':count ᎢᏯᏔᏬᏍᏔᏅ',
'min' => ':count ᎢᏯᏔᏬᏍᏔᏅ',
'a_minute' => ':count ᎢᏯᏔᏬᏍᏔᏅ',
'ago' => ':time ᏥᎨᏒ',
'from_now' => 'ᎾᎿ :time',
]);
src/Carbon/Lang/ckb.php 0000644 00000011473 14753612052 0010703 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Swara Mohammed
* - Kawan Pshtiwan
*/
$months = [
'کانونی دووەم',
'شوبات',
'ئازار',
'نیسان',
'ئایار',
'حوزەیران',
'تەمموز',
'ئاب',
'ئەیلوول',
'تشرینی یەکەم',
'تشرینی دووەم',
'کانونی یەکەم',
];
return [
'year' => implode('|', ['{0}:count ساڵێک', '{1}ساڵێک', '{2}دوو ساڵ', ']2,11[:count ساڵ', ']10,Inf[:count ساڵ']),
'a_year' => implode('|', ['{0}:count ساڵێک', '{1}ساڵێک', '{2}دوو ساڵ', ']2,11[:count ساڵ', ']10,Inf[:count ساڵ']),
'month' => implode('|', ['{0}:count مانگێک', '{1}مانگێک', '{2}دوو مانگ', ']2,11[:count مانگ', ']10,Inf[:count مانگ']),
'a_month' => implode('|', ['{0}:count مانگێک', '{1}مانگێک', '{2}دوو مانگ', ']2,11[:count مانگ', ']10,Inf[:count مانگ']),
'week' => implode('|', ['{0}:count هەفتەیەک', '{1}هەفتەیەک', '{2}دوو هەفتە', ']2,11[:count هەفتە', ']10,Inf[:count هەفتە']),
'a_week' => implode('|', ['{0}:count هەفتەیەک', '{1}هەفتەیەک', '{2}دوو هەفتە', ']2,11[:count هەفتە', ']10,Inf[:count هەفتە']),
'day' => implode('|', ['{0}:count ڕۆژێک', '{1}ڕۆژێک', '{2}دوو ڕۆژ', ']2,11[:count ڕۆژ', ']10,Inf[:count ڕۆژ']),
'a_day' => implode('|', ['{0}:count ڕۆژێک', '{1}ڕۆژێک', '{2}دوو ڕۆژ', ']2,11[:count ڕۆژ', ']10,Inf[:count ڕۆژ']),
'hour' => implode('|', ['{0}:count کاتژمێرێک', '{1}کاتژمێرێک', '{2}دوو کاتژمێر', ']2,11[:count کاتژمێر', ']10,Inf[:count کاتژمێر']),
'a_hour' => implode('|', ['{0}:count کاتژمێرێک', '{1}کاتژمێرێک', '{2}دوو کاتژمێر', ']2,11[:count کاتژمێر', ']10,Inf[:count کاتژمێر']),
'minute' => implode('|', ['{0}:count خولەکێک', '{1}خولەکێک', '{2}دوو خولەک', ']2,11[:count خولەک', ']10,Inf[:count خولەک']),
'a_minute' => implode('|', ['{0}:count خولەکێک', '{1}خولەکێک', '{2}دوو خولەک', ']2,11[:count خولەک', ']10,Inf[:count خولەک']),
'second' => implode('|', ['{0}:count چرکەیەک', '{1}چرکەیەک', '{2}دوو چرکە', ']2,11[:count چرکە', ']10,Inf[:count چرکە']),
'a_second' => implode('|', ['{0}:count چرکەیەک', '{1}چرکەیەک', '{2}دوو چرکە', ']2,11[:count چرکە', ']10,Inf[:count چرکە']),
'ago' => 'پێش :time',
'from_now' => ':time لە ئێستاوە',
'after' => 'دوای :time',
'before' => 'پێش :time',
'diff_now' => 'ئێستا',
'diff_today' => 'ئەمڕۆ',
'diff_today_regexp' => 'ڕۆژ(?:\\s+لە)?(?:\\s+کاتژمێر)?',
'diff_yesterday' => 'دوێنێ',
'diff_yesterday_regexp' => 'دوێنێ(?:\\s+لە)?(?:\\s+کاتژمێر)?',
'diff_tomorrow' => 'سبەینێ',
'diff_tomorrow_regexp' => 'سبەینێ(?:\\s+لە)?(?:\\s+کاتژمێر)?',
'diff_before_yesterday' => 'پێش دوێنێ',
'diff_after_tomorrow' => 'دوای سبەینێ',
'period_recurrences' => implode('|', ['{0}جار', '{1}جار', '{2}:count دووجار', ']2,11[:count جار', ']10,Inf[:count جار']),
'period_interval' => 'هەموو :interval',
'period_start_date' => 'لە :date',
'period_end_date' => 'بۆ :date',
'months' => $months,
'months_short' => $months,
'weekdays' => ['یەکشەممە', 'دووشەممە', 'سێشەممە', 'چوارشەممە', 'پێنجشەممە', 'هەینی', 'شەممە'],
'weekdays_short' => ['یەکشەممە', 'دووشەممە', 'سێشەممە', 'چوارشەممە', 'پێنجشەممە', 'هەینی', 'شەممە'],
'weekdays_min' => ['یەکشەممە', 'دووشەممە', 'سێشەممە', 'چوارشەممە', 'پێنجشەممە', 'هەینی', 'شەممە'],
'list' => ['، ', ' و '],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[ئەمڕۆ لە کاتژمێر] LT',
'nextDay' => '[سبەینێ لە کاتژمێر] LT',
'nextWeek' => 'dddd [لە کاتژمێر] LT',
'lastDay' => '[دوێنێ لە کاتژمێر] LT',
'lastWeek' => 'dddd [لە کاتژمێر] LT',
'sameElse' => 'L',
],
'meridiem' => ['پ.ن', 'د.ن'],
'weekend' => [5, 6],
];
src/Carbon/Lang/cmn.php 0000644 00000000517 14753612052 0010716 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/cmn_TW.php';
src/Carbon/Lang/cmn_TW.php 0000644 00000003147 14753612052 0011332 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'formats' => [
'L' => 'YYYY年MM月DD號',
],
'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'months_short' => [' 1月', ' 2月', ' 3月', ' 4月', ' 5月', ' 6月', ' 7月', ' 8月', ' 9月', '10月', '11月', '12月'],
'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'meridiem' => ['上午', '下午'],
'year' => ':count 年',
'y' => ':count 年',
'a_year' => ':count 年',
'month' => ':count 月',
'm' => ':count 月',
'a_month' => ':count 月',
'week' => ':count 周',
'w' => ':count 周',
'a_week' => ':count 周',
'day' => ':count 白天',
'd' => ':count 白天',
'a_day' => ':count 白天',
'hour' => ':count 小时',
'h' => ':count 小时',
'a_hour' => ':count 小时',
'minute' => ':count 分钟',
'min' => ':count 分钟',
'a_minute' => ':count 分钟',
'second' => ':count 秒',
's' => ':count 秒',
'a_second' => ':count 秒',
]);
src/Carbon/Lang/crh.php 0000644 00000000517 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/crh_UA.php';
src/Carbon/Lang/crh_UA.php 0000644 00000003145 14753612052 0011302 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Reşat SABIQ tilde.birlik@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'Mayıs', 'İyun', 'İyul', 'Avgust', 'Sentâbr', 'Oktâbr', 'Noyabr', 'Dekabr'],
'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'İyn', 'İyl', 'Avg', 'Sen', 'Okt', 'Noy', 'Dek'],
'weekdays' => ['Bazar', 'Bazarertesi', 'Salı', 'Çarşembe', 'Cumaaqşamı', 'Cuma', 'Cumaertesi'],
'weekdays_short' => ['Baz', 'Ber', 'Sal', 'Çar', 'Caq', 'Cum', 'Cer'],
'weekdays_min' => ['Baz', 'Ber', 'Sal', 'Çar', 'Caq', 'Cum', 'Cer'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ÜE', 'ÜS'],
'year' => ':count yıl',
'y' => ':count yıl',
'a_year' => ':count yıl',
'month' => ':count ay',
'm' => ':count ay',
'a_month' => ':count ay',
'week' => ':count afta',
'w' => ':count afta',
'a_week' => ':count afta',
'day' => ':count kün',
'd' => ':count kün',
'a_day' => ':count kün',
'hour' => ':count saat',
'h' => ':count saat',
'a_hour' => ':count saat',
'minute' => ':count daqqa',
'min' => ':count daqqa',
'a_minute' => ':count daqqa',
'second' => ':count ekinci',
's' => ':count ekinci',
'a_second' => ':count ekinci',
]);
src/Carbon/Lang/cs.php 0000644 00000010577 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Jakub Tesinsky
* - Martin Suja
* - Nikos Timiopulos
* - Bohuslav Blín
* - Tsutomu Kuroda
* - tjku
* - Lukas Svoboda
* - Max Melentiev
* - Juanito Fatas
* - Akira Matsuda
* - Christopher Dell
* - Václav Pávek
* - CodeSkills
* - Tlapi
* - newman101
* - Petr Kadlec
* - tommaskraus
* - Karel Sommer (calvera)
*/
$za = function ($time) {
return 'za '.strtr($time, [
'hodina' => 'hodinu',
'minuta' => 'minutu',
'sekunda' => 'sekundu',
]);
};
$pred = function ($time) {
$time = strtr($time, [
'hodina' => 'hodinou',
'minuta' => 'minutou',
'sekunda' => 'sekundou',
]);
$time = preg_replace('/hodiny?(?!\w)/', 'hodinami', $time);
$time = preg_replace('/minuty?(?!\w)/', 'minutami', $time);
$time = preg_replace('/sekundy?(?!\w)/', 'sekundami', $time);
return "před $time";
};
return [
'year' => ':count rok|:count roky|:count let',
'y' => ':count rok|:count roky|:count let',
'a_year' => 'rok|:count roky|:count let',
'month' => ':count měsíc|:count měsíce|:count měsíců',
'm' => ':count měs.',
'a_month' => 'měsíc|:count měsíce|:count měsíců',
'week' => ':count týden|:count týdny|:count týdnů',
'w' => ':count týd.',
'a_week' => 'týden|:count týdny|:count týdnů',
'day' => ':count den|:count dny|:count dní',
'd' => ':count den|:count dny|:count dní',
'a_day' => 'den|:count dny|:count dní',
'hour' => ':count hodina|:count hodiny|:count hodin',
'h' => ':count hod.',
'a_hour' => 'hodina|:count hodiny|:count hodin',
'minute' => ':count minuta|:count minuty|:count minut',
'min' => ':count min.',
'a_minute' => 'minuta|:count minuty|:count minut',
'second' => ':count sekunda|:count sekundy|:count sekund',
's' => ':count sek.',
'a_second' => 'pár sekund|:count sekundy|:count sekund',
'month_ago' => ':count měsícem|:count měsíci|:count měsíci',
'a_month_ago' => 'měsícem|:count měsíci|:count měsíci',
'day_ago' => ':count dnem|:count dny|:count dny',
'a_day_ago' => 'dnem|:count dny|:count dny',
'week_ago' => ':count týdnem|:count týdny|:count týdny',
'a_week_ago' => 'týdnem|:count týdny|:count týdny',
'year_ago' => ':count rokem|:count roky|:count lety',
'y_ago' => ':count rok.|:count rok.|:count let.',
'a_year_ago' => 'rokem|:count roky|:count lety',
'month_before' => ':count měsícem|:count měsíci|:count měsíci',
'a_month_before' => 'měsícem|:count měsíci|:count měsíci',
'day_before' => ':count dnem|:count dny|:count dny',
'a_day_before' => 'dnem|:count dny|:count dny',
'week_before' => ':count týdnem|:count týdny|:count týdny',
'a_week_before' => 'týdnem|:count týdny|:count týdny',
'year_before' => ':count rokem|:count roky|:count lety',
'y_before' => ':count rok.|:count rok.|:count let.',
'a_year_before' => 'rokem|:count roky|:count lety',
'ago' => $pred,
'from_now' => $za,
'before' => $pred,
'after' => $za,
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'months' => ['ledna', 'února', 'března', 'dubna', 'května', 'června', 'července', 'srpna', 'září', 'října', 'listopadu', 'prosince'],
'months_standalone' => ['leden', 'únor', 'březen', 'duben', 'květen', 'červen', 'červenec', 'srpen', 'září', 'říjen', 'listopad', 'prosinec'],
'months_short' => ['led', 'úno', 'bře', 'dub', 'kvě', 'čvn', 'čvc', 'srp', 'zář', 'říj', 'lis', 'pro'],
'weekdays' => ['neděle', 'pondělí', 'úterý', 'středa', 'čtvrtek', 'pátek', 'sobota'],
'weekdays_short' => ['ned', 'pon', 'úte', 'stř', 'čtv', 'pát', 'sob'],
'weekdays_min' => ['ne', 'po', 'út', 'st', 'čt', 'pá', 'so'],
'list' => [', ', ' a '],
'diff_now' => 'nyní',
'diff_yesterday' => 'včera',
'diff_tomorrow' => 'zítra',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD. MM. YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY HH:mm',
'LLLL' => 'dddd D. MMMM YYYY HH:mm',
],
'meridiem' => ['dopoledne', 'odpoledne'],
];
src/Carbon/Lang/cs_CZ.php 0000644 00000000413 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/cs.php';
src/Carbon/Lang/csb.php 0000644 00000000517 14753612052 0010710 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/csb_PL.php';
src/Carbon/Lang/csb_PL.php 0000644 00000002672 14753612052 0011307 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - csb_PL locale Michal Ostrowski bug-glibc-locales@gnu.org
*/
return [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'MMMM DD, YYYY',
'LLL' => 'DD MMM HH:mm',
'LLLL' => 'MMMM DD, YYYY HH:mm',
],
'months' => ['stëcznika', 'gromicznika', 'strëmiannika', 'łżëkwiata', 'maja', 'czerwińca', 'lëpińca', 'zélnika', 'séwnika', 'rujana', 'lëstopadnika', 'gòdnika'],
'months_short' => ['stë', 'gro', 'str', 'łżë', 'maj', 'cze', 'lëp', 'zél', 'séw', 'ruj', 'lës', 'gòd'],
'weekdays' => ['niedzela', 'pòniedzôłk', 'wtórk', 'strzoda', 'czwiôrtk', 'piątk', 'sobòta'],
'weekdays_short' => ['nie', 'pòn', 'wtó', 'str', 'czw', 'pią', 'sob'],
'weekdays_min' => ['nie', 'pòn', 'wtó', 'str', 'czw', 'pią', 'sob'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' a téż '],
'two_words_connector' => ' a téż ',
'year' => ':count rok',
'month' => ':count miesiąc',
'week' => ':count tidzéń',
'day' => ':count dzéń',
'hour' => ':count gòdzëna',
'minute' => ':count minuta',
'second' => ':count sekunda',
];
src/Carbon/Lang/cu.php 0000644 00000003037 14753612052 0010550 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'months' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
'months_short' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'YYYY MMMM D, dddd HH:mm',
],
'year' => ':count лѣто',
'y' => ':count лѣто',
'a_year' => ':count лѣто',
'month' => ':count мѣсѧць',
'm' => ':count мѣсѧць',
'a_month' => ':count мѣсѧць',
'week' => ':count сєдмица',
'w' => ':count сєдмица',
'a_week' => ':count сєдмица',
'day' => ':count дьнь',
'd' => ':count дьнь',
'a_day' => ':count дьнь',
'hour' => ':count година',
'h' => ':count година',
'a_hour' => ':count година',
'minute' => ':count малъ', // less reliable
'min' => ':count малъ', // less reliable
'a_minute' => ':count малъ', // less reliable
'second' => ':count въторъ',
's' => ':count въторъ',
'a_second' => ':count въторъ',
]);
src/Carbon/Lang/cv.php 0000644 00000005271 14753612052 0010553 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - JD Isaacks
*/
return [
'year' => ':count ҫул',
'a_year' => '{1}пӗр ҫул|:count ҫул',
'month' => ':count уйӑх',
'a_month' => '{1}пӗр уйӑх|:count уйӑх',
'week' => ':count эрне',
'a_week' => '{1}пӗр эрне|:count эрне',
'day' => ':count кун',
'a_day' => '{1}пӗр кун|:count кун',
'hour' => ':count сехет',
'a_hour' => '{1}пӗр сехет|:count сехет',
'minute' => ':count минут',
'a_minute' => '{1}пӗр минут|:count минут',
'second' => ':count ҫеккунт',
'a_second' => '{1}пӗр-ик ҫеккунт|:count ҫеккунт',
'ago' => ':time каялла',
'from_now' => static function ($time) {
return $time.(preg_match('/сехет$/u', $time) ? 'рен' : (preg_match('/ҫул/', $time) ? 'тан' : 'ран'));
},
'diff_yesterday' => 'Ӗнер',
'diff_today' => 'Паян',
'diff_tomorrow' => 'Ыран',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD-MM-YYYY',
'LL' => 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',
'LLL' => 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',
'LLLL' => 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',
],
'calendar' => [
'sameDay' => '[Паян] LT [сехетре]',
'nextDay' => '[Ыран] LT [сехетре]',
'nextWeek' => '[Ҫитес] dddd LT [сехетре]',
'lastDay' => '[Ӗнер] LT [сехетре]',
'lastWeek' => '[Иртнӗ] dddd LT [сехетре]',
'sameElse' => 'L',
],
'ordinal' => ':number-мӗш',
'months' => ['кӑрлач', 'нарӑс', 'пуш', 'ака', 'май', 'ҫӗртме', 'утӑ', 'ҫурла', 'авӑн', 'юпа', 'чӳк', 'раштав'],
'months_short' => ['кӑр', 'нар', 'пуш', 'ака', 'май', 'ҫӗр', 'утӑ', 'ҫур', 'авн', 'юпа', 'чӳк', 'раш'],
'weekdays' => ['вырсарникун', 'тунтикун', 'ытларикун', 'юнкун', 'кӗҫнерникун', 'эрнекун', 'шӑматкун'],
'weekdays_short' => ['выр', 'тун', 'ытл', 'юн', 'кӗҫ', 'эрн', 'шӑм'],
'weekdays_min' => ['вр', 'тн', 'ыт', 'юн', 'кҫ', 'эр', 'шм'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' тата '],
];
src/Carbon/Lang/cv_RU.php 0000644 00000000413 14753612052 0011152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/cv.php';
src/Carbon/Lang/cy.php 0000644 00000005332 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - JD Isaacks
* - Daniel Monaghan
*/
return [
'year' => '{1}blwyddyn|]1,Inf[:count flynedd',
'y' => ':countbl',
'month' => '{1}mis|]1,Inf[:count mis',
'm' => ':countmi',
'week' => ':count wythnos',
'w' => ':countw',
'day' => '{1}diwrnod|]1,Inf[:count diwrnod',
'd' => ':countd',
'hour' => '{1}awr|]1,Inf[:count awr',
'h' => ':counth',
'minute' => '{1}munud|]1,Inf[:count munud',
'min' => ':countm',
'second' => '{1}ychydig eiliadau|]1,Inf[:count eiliad',
's' => ':counts',
'ago' => ':time yn ôl',
'from_now' => 'mewn :time',
'after' => ':time ar ôl',
'before' => ':time o\'r blaen',
'diff_now' => 'nawr',
'diff_today' => 'Heddiw',
'diff_today_regexp' => 'Heddiw(?:\\s+am)?',
'diff_yesterday' => 'ddoe',
'diff_yesterday_regexp' => 'Ddoe(?:\\s+am)?',
'diff_tomorrow' => 'yfory',
'diff_tomorrow_regexp' => 'Yfory(?:\\s+am)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Heddiw am] LT',
'nextDay' => '[Yfory am] LT',
'nextWeek' => 'dddd [am] LT',
'lastDay' => '[Ddoe am] LT',
'lastWeek' => 'dddd [diwethaf am] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
return $number.(
$number > 20
? (\in_array((int) $number, [40, 50, 60, 80, 100], true) ? 'fed' : 'ain')
: ([
'', 'af', 'il', 'ydd', 'ydd', 'ed', 'ed', 'ed', 'fed', 'fed', 'fed', // 1af to 10fed
'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'fed', // 11eg to 20fed
])[$number] ?? ''
);
},
'months' => ['Ionawr', 'Chwefror', 'Mawrth', 'Ebrill', 'Mai', 'Mehefin', 'Gorffennaf', 'Awst', 'Medi', 'Hydref', 'Tachwedd', 'Rhagfyr'],
'months_short' => ['Ion', 'Chwe', 'Maw', 'Ebr', 'Mai', 'Meh', 'Gor', 'Aws', 'Med', 'Hyd', 'Tach', 'Rhag'],
'weekdays' => ['Dydd Sul', 'Dydd Llun', 'Dydd Mawrth', 'Dydd Mercher', 'Dydd Iau', 'Dydd Gwener', 'Dydd Sadwrn'],
'weekdays_short' => ['Sul', 'Llun', 'Maw', 'Mer', 'Iau', 'Gwe', 'Sad'],
'weekdays_min' => ['Su', 'Ll', 'Ma', 'Me', 'Ia', 'Gw', 'Sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' a '],
'meridiem' => ['yb', 'yh'],
];
src/Carbon/Lang/cy_GB.php 0000644 00000000413 14753612052 0011117 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/cy.php';
src/Carbon/Lang/da.php 0000644 00000005321 14753612052 0010523 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Rune Mønnike
* - François B
* - codenhagen
* - JD Isaacks
* - Jens Herlevsen
* - Ulrik McArdle (mcardle)
* - Frederik Sauer (FrittenKeeZ)
* - Janus Bahs Jacquet (kokoshneta)
*/
return [
'year' => ':count år|:count år',
'a_year' => 'et år|:count år',
'y' => ':count år|:count år',
'month' => ':count måned|:count måneder',
'a_month' => 'en måned|:count måneder',
'm' => ':count mdr.',
'week' => ':count uge|:count uger',
'a_week' => 'en uge|:count uger',
'w' => ':count u.',
'day' => ':count dag|:count dage',
'a_day' => ':count dag|:count dage',
'd' => ':count d.',
'hour' => ':count time|:count timer',
'a_hour' => 'en time|:count timer',
'h' => ':count t.',
'minute' => ':count minut|:count minutter',
'a_minute' => 'et minut|:count minutter',
'min' => ':count min.',
'second' => ':count sekund|:count sekunder',
'a_second' => 'få sekunder|:count sekunder',
's' => ':count s.',
'ago' => 'for :time siden',
'from_now' => 'om :time',
'after' => ':time efter',
'before' => ':time før',
'diff_now' => 'nu',
'diff_today' => 'i dag',
'diff_today_regexp' => 'i dag(?:\\s+kl.)?',
'diff_yesterday' => 'i går',
'diff_yesterday_regexp' => 'i går(?:\\s+kl.)?',
'diff_tomorrow' => 'i morgen',
'diff_tomorrow_regexp' => 'i morgen(?:\\s+kl.)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY HH:mm',
'LLLL' => 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',
],
'calendar' => [
'sameDay' => '[i dag kl.] LT',
'nextDay' => '[i morgen kl.] LT',
'nextWeek' => 'på dddd [kl.] LT',
'lastDay' => '[i går kl.] LT',
'lastWeek' => '[i] dddd[s kl.] LT',
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['januar', 'februar', 'marts', 'april', 'maj', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'december'],
'months_short' => ['jan.', 'feb.', 'mar.', 'apr.', 'maj.', 'jun.', 'jul.', 'aug.', 'sep.', 'okt.', 'nov.', 'dec.'],
'weekdays' => ['søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag'],
'weekdays_short' => ['søn.', 'man.', 'tir.', 'ons.', 'tor.', 'fre.', 'lør.'],
'weekdays_min' => ['sø', 'ma', 'ti', 'on', 'to', 'fr', 'lø'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' og '],
];
src/Carbon/Lang/da_DK.php 0000644 00000000413 14753612052 0011076 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/da.php';
src/Carbon/Lang/da_GL.php 0000644 00000000731 14753612052 0011105 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/da.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
'LL' => 'D. MMM YYYY',
'LLL' => 'D. MMMM YYYY HH.mm',
'LLLL' => 'dddd [den] D. MMMM YYYY HH.mm',
],
]);
src/Carbon/Lang/dav.php 0000644 00000002372 14753612052 0010714 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['Luma lwa K', 'luma lwa p'],
'weekdays' => ['Ituku ja jumwa', 'Kuramuka jimweri', 'Kuramuka kawi', 'Kuramuka kadadu', 'Kuramuka kana', 'Kuramuka kasanu', 'Kifula nguwo'],
'weekdays_short' => ['Jum', 'Jim', 'Kaw', 'Kad', 'Kan', 'Kas', 'Ngu'],
'weekdays_min' => ['Jum', 'Jim', 'Kaw', 'Kad', 'Kan', 'Kas', 'Ngu'],
'months' => ['Mori ghwa imbiri', 'Mori ghwa kawi', 'Mori ghwa kadadu', 'Mori ghwa kana', 'Mori ghwa kasanu', 'Mori ghwa karandadu', 'Mori ghwa mfungade', 'Mori ghwa wunyanya', 'Mori ghwa ikenda', 'Mori ghwa ikumi', 'Mori ghwa ikumi na imweri', 'Mori ghwa ikumi na iwi'],
'months_short' => ['Imb', 'Kaw', 'Kad', 'Kan', 'Kas', 'Kar', 'Mfu', 'Wun', 'Ike', 'Iku', 'Imw', 'Iwi'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/de.php 0000644 00000011153 14753612052 0010527 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Michael Hohl
* - sheriffmarley
* - dennisoderwald
* - Timo
* - Karag2006
* - Pete Scopes (pdscopes)
*/
return [
'year' => ':count Jahr|:count Jahre',
'a_year' => 'ein Jahr|:count Jahre',
'y' => ':count J.',
'month' => ':count Monat|:count Monate',
'a_month' => 'ein Monat|:count Monate',
'm' => ':count Mon.',
'week' => ':count Woche|:count Wochen',
'a_week' => 'eine Woche|:count Wochen',
'w' => ':count Wo.',
'day' => ':count Tag|:count Tage',
'a_day' => 'ein Tag|:count Tage',
'd' => ':count Tg.',
'hour' => ':count Stunde|:count Stunden',
'a_hour' => 'eine Stunde|:count Stunden',
'h' => ':count Std.',
'minute' => ':count Minute|:count Minuten',
'a_minute' => 'eine Minute|:count Minuten',
'min' => ':count Min.',
'second' => ':count Sekunde|:count Sekunden',
'a_second' => 'ein paar Sekunden|:count Sekunden',
's' => ':count Sek.',
'millisecond' => ':count Millisekunde|:count Millisekunden',
'a_millisecond' => 'eine Millisekunde|:count Millisekunden',
'ms' => ':countms',
'microsecond' => ':count Mikrosekunde|:count Mikrosekunden',
'a_microsecond' => 'eine Mikrosekunde|:count Mikrosekunden',
'µs' => ':countµs',
'ago' => 'vor :time',
'from_now' => 'in :time',
'after' => ':time später',
'before' => ':time zuvor',
'year_from_now' => ':count Jahr|:count Jahren',
'month_from_now' => ':count Monat|:count Monaten',
'week_from_now' => ':count Woche|:count Wochen',
'day_from_now' => ':count Tag|:count Tagen',
'year_ago' => ':count Jahr|:count Jahren',
'month_ago' => ':count Monat|:count Monaten',
'week_ago' => ':count Woche|:count Wochen',
'day_ago' => ':count Tag|:count Tagen',
'a_year_from_now' => 'ein Jahr|:count Jahren',
'a_month_from_now' => 'ein Monat|:count Monaten',
'a_week_from_now' => 'eine Woche|:count Wochen',
'a_day_from_now' => 'ein Tag|:count Tagen',
'a_year_ago' => 'ein Jahr|:count Jahren',
'a_month_ago' => 'ein Monat|:count Monaten',
'a_week_ago' => 'eine Woche|:count Wochen',
'a_day_ago' => 'ein Tag|:count Tagen',
'diff_now' => 'Gerade eben',
'diff_today' => 'heute',
'diff_today_regexp' => 'heute(?:\\s+um)?',
'diff_yesterday' => 'Gestern',
'diff_yesterday_regexp' => 'gestern(?:\\s+um)?',
'diff_tomorrow' => 'Morgen',
'diff_tomorrow_regexp' => 'morgen(?:\\s+um)?',
'diff_before_yesterday' => 'Vorgestern',
'diff_after_tomorrow' => 'Übermorgen',
'period_recurrences' => 'einmal|:count mal',
'period_interval' => static function (string $interval = '') {
/** @var string $output */
$output = preg_replace('/^(ein|eine|1)\s+/u', '', $interval);
if (preg_match('/^(ein|1)( Monat| Mon.| Tag| Tg.)/u', $interval)) {
return "jeden $output";
}
if (preg_match('/^(ein|1)( Jahr| J.)/u', $interval)) {
return "jedes $output";
}
return "jede $output";
},
'period_start_date' => 'von :date',
'period_end_date' => 'bis :date',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY HH:mm',
'LLLL' => 'dddd, D. MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[heute um] LT [Uhr]',
'nextDay' => '[morgen um] LT [Uhr]',
'nextWeek' => 'dddd [um] LT [Uhr]',
'lastDay' => '[gestern um] LT [Uhr]',
'lastWeek' => '[letzten] dddd [um] LT [Uhr]',
'sameElse' => 'L',
],
'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
'months_short' => ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
'weekdays' => ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch', 'Donnerstag', 'Freitag', 'Samstag'],
'weekdays_short' => ['So.', 'Mo.', 'Di.', 'Mi.', 'Do.', 'Fr.', 'Sa.'],
'weekdays_min' => ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
'ordinal' => ':number.',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' und '],
'ordinal_words' => [
'of' => 'im',
'first' => 'erster',
'second' => 'zweiter',
'third' => 'dritter',
'fourth' => 'vierten',
'fifth' => 'fünfter',
'last' => 'letzten',
],
];
src/Carbon/Lang/de_AT.php 0000644 00000001010 14753612052 0011102 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - sheriffmarley
* - Timo
* - Michael Hohl
* - Namoshek
* - Bernhard Baumrock (BernhardBaumrock)
*/
return array_replace_recursive(require __DIR__.'/de.php', [
'months' => [
0 => 'Jänner',
],
'months_short' => [
0 => 'Jän',
],
]);
src/Carbon/Lang/de_BE.php 0000644 00000000631 14753612052 0011074 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/de.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
]);
src/Carbon/Lang/de_CH.php 0000644 00000000657 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - sheriffmarley
* - Timo
* - Michael Hohl
*/
return array_replace_recursive(require __DIR__.'/de.php', [
'weekdays_short' => ['So', 'Mo', 'Di', 'Mi', 'Do', 'Fr', 'Sa'],
]);
src/Carbon/Lang/de_DE.php 0000644 00000000537 14753612052 0011103 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Free Software Foundation, Inc. bug-glibc-locales@gnu.org
*/
return require __DIR__.'/de.php';
src/Carbon/Lang/de_IT.php 0000644 00000000532 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Matthias Dieter Wallno:fer libc-locales@sourceware.org
*/
return require __DIR__.'/de.php';
src/Carbon/Lang/de_LI.php 0000644 00000000413 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/de.php';
src/Carbon/Lang/de_LU.php 0000644 00000000631 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/de.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
]);
src/Carbon/Lang/dje.php 0000644 00000002760 14753612052 0010705 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Subbaahi', 'Zaarikay b'],
'weekdays' => ['Alhadi', 'Atinni', 'Atalaata', 'Alarba', 'Alhamisi', 'Alzuma', 'Asibti'],
'weekdays_short' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
'weekdays_min' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
'months' => ['Žanwiye', 'Feewiriye', 'Marsi', 'Awiril', 'Me', 'Žuweŋ', 'Žuyye', 'Ut', 'Sektanbur', 'Oktoobur', 'Noowanbur', 'Deesanbur'],
'months_short' => ['Žan', 'Fee', 'Mar', 'Awi', 'Me', 'Žuw', 'Žuy', 'Ut', 'Sek', 'Okt', 'Noo', 'Dee'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'year' => ':count hari', // less reliable
'y' => ':count hari', // less reliable
'a_year' => ':count hari', // less reliable
'week' => ':count alzuma', // less reliable
'w' => ':count alzuma', // less reliable
'a_week' => ':count alzuma', // less reliable
'second' => ':count atinni', // less reliable
's' => ':count atinni', // less reliable
'a_second' => ':count atinni', // less reliable
]);
src/Carbon/Lang/doi.php 0000644 00000000517 14753612052 0010714 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/doi_IN.php';
src/Carbon/Lang/doi_IN.php 0000644 00000003164 14753612052 0011303 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat Pune libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फरवरी', 'मार्च', 'एप्रैल', 'मेई', 'जून', 'जूलै', 'अगस्त', 'सितंबर', 'अक्तूबर', 'नवंबर', 'दिसंबर'],
'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'एप्रैल', 'मेई', 'जून', 'जूलै', 'अगस्त', 'सितंबर', 'अक्तूबर', 'नवंबर', 'दिसंबर'],
'weekdays' => ['ऐतबार', 'सोमबार', 'मंगलबर', 'बुधबार', 'बीरबार', 'शुक्करबार', 'श्नीचरबार'],
'weekdays_short' => ['ऐत', 'सोम', 'मंगल', 'बुध', 'बीर', 'शुक्कर', 'श्नीचर'],
'weekdays_min' => ['ऐत', 'सोम', 'मंगल', 'बुध', 'बीर', 'शुक्कर', 'श्नीचर'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['सञं', 'सबेर'],
'second' => ':count सङार', // less reliable
's' => ':count सङार', // less reliable
'a_second' => ':count सङार', // less reliable
]);
src/Carbon/Lang/dsb.php 0000644 00000000517 14753612052 0010711 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/dsb_DE.php';
src/Carbon/Lang/dsb_DE.php 0000644 00000003470 14753612052 0011262 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Information from Michael Wolf bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'DD. MMMM YYYY',
'LLL' => 'DD. MMMM, HH:mm [góź.]',
'LLLL' => 'dddd, DD. MMMM YYYY, HH:mm [góź.]',
],
'months' => ['januara', 'februara', 'měrca', 'apryla', 'maja', 'junija', 'julija', 'awgusta', 'septembra', 'oktobra', 'nowembra', 'decembra'],
'months_short' => ['Jan', 'Feb', 'Měr', 'Apr', 'Maj', 'Jun', 'Jul', 'Awg', 'Sep', 'Okt', 'Now', 'Dec'],
'weekdays' => ['Njeźela', 'Pónjeźele', 'Wałtora', 'Srjoda', 'Stwórtk', 'Pětk', 'Sobota'],
'weekdays_short' => ['Nj', 'Pó', 'Wa', 'Sr', 'St', 'Pě', 'So'],
'weekdays_min' => ['Nj', 'Pó', 'Wa', 'Sr', 'St', 'Pě', 'So'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count lěto',
'y' => ':count lěto',
'a_year' => ':count lěto',
'month' => ':count mjasec',
'm' => ':count mjasec',
'a_month' => ':count mjasec',
'week' => ':count tyźeń',
'w' => ':count tyźeń',
'a_week' => ':count tyźeń',
'day' => ':count źeń',
'd' => ':count źeń',
'a_day' => ':count źeń',
'hour' => ':count góźina',
'h' => ':count góźina',
'a_hour' => ':count góźina',
'minute' => ':count minuta',
'min' => ':count minuta',
'a_minute' => ':count minuta',
'second' => ':count drugi',
's' => ':count drugi',
'a_second' => ':count drugi',
]);
src/Carbon/Lang/dua.php 0000644 00000004161 14753612052 0010711 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['idiɓa', 'ebyámu'],
'weekdays' => ['éti', 'mɔ́sú', 'kwasú', 'mukɔ́sú', 'ŋgisú', 'ɗónɛsú', 'esaɓasú'],
'weekdays_short' => ['ét', 'mɔ́s', 'kwa', 'muk', 'ŋgi', 'ɗón', 'esa'],
'weekdays_min' => ['ét', 'mɔ́s', 'kwa', 'muk', 'ŋgi', 'ɗón', 'esa'],
'months' => ['dimɔ́di', 'ŋgɔndɛ', 'sɔŋɛ', 'diɓáɓá', 'emiasele', 'esɔpɛsɔpɛ', 'madiɓɛ́díɓɛ́', 'diŋgindi', 'nyɛtɛki', 'mayésɛ́', 'tiníní', 'eláŋgɛ́'],
'months_short' => ['di', 'ŋgɔn', 'sɔŋ', 'diɓ', 'emi', 'esɔ', 'mad', 'diŋ', 'nyɛt', 'may', 'tin', 'elá'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'year' => ':count ma mbu', // less reliable
'y' => ':count ma mbu', // less reliable
'a_year' => ':count ma mbu', // less reliable
'month' => ':count myo̱di', // less reliable
'm' => ':count myo̱di', // less reliable
'a_month' => ':count myo̱di', // less reliable
'week' => ':count woki', // less reliable
'w' => ':count woki', // less reliable
'a_week' => ':count woki', // less reliable
'day' => ':count buńa', // less reliable
'd' => ':count buńa', // less reliable
'a_day' => ':count buńa', // less reliable
'hour' => ':count ma awa', // less reliable
'h' => ':count ma awa', // less reliable
'a_hour' => ':count ma awa', // less reliable
'minute' => ':count minuti', // less reliable
'min' => ':count minuti', // less reliable
'a_minute' => ':count minuti', // less reliable
'second' => ':count maba', // less reliable
's' => ':count maba', // less reliable
'a_second' => ':count maba', // less reliable
]);
src/Carbon/Lang/dv.php 0000644 00000005173 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
$months = [
'ޖެނުއަރީ',
'ފެބްރުއަރީ',
'މާރިޗު',
'އޭޕްރީލު',
'މޭ',
'ޖޫން',
'ޖުލައި',
'އޯގަސްޓު',
'ސެޕްޓެމްބަރު',
'އޮކްޓޯބަރު',
'ނޮވެމްބަރު',
'ޑިސެމްބަރު',
];
$weekdays = [
'އާދިއްތަ',
'ހޯމަ',
'އަންގާރަ',
'ބުދަ',
'ބުރާސްފަތި',
'ހުކުރު',
'ހޮނިހިރު',
];
/*
* Authors:
* - Josh Soref
* - Jawish Hameed
*/
return [
'year' => ':count '.'އަހަރު',
'a_year' => '{1}'.'އަހަރެއް'.'|:count '.'އަހަރު',
'month' => ':count '.'މަސް',
'a_month' => '{1}'.'މަހެއް'.'|:count '.'މަސް',
'week' => ':count '.'ހަފްތާ',
'a_week' => '{1}'.'ސިކުންތުކޮޅެއް'.'|:count '.'ހަފްތާ',
'day' => ':count '.'ދުވަސް',
'a_day' => '{1}'.'ދުވަހެއް'.'|:count '.'ދުވަސް',
'hour' => ':count '.'ގަޑިއިރު',
'a_hour' => '{1}'.'ގަޑިއިރެއް'.'|:count '.'ގަޑިއިރު',
'minute' => ':count '.'މިނިޓު',
'a_minute' => '{1}'.'މިނިޓެއް'.'|:count '.'މިނިޓު',
'second' => ':count '.'ސިކުންތު',
'a_second' => '{1}'.'ސިކުންތުކޮޅެއް'.'|:count '.'ސިކުންތު',
'ago' => 'ކުރިން :time',
'from_now' => 'ތެރޭގައި :time',
'after' => ':time ފަހުން',
'before' => ':time ކުރި',
'diff_yesterday' => 'އިއްޔެ',
'diff_today' => 'މިއަދު',
'diff_tomorrow' => 'މާދަމާ',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[މިއަދު] LT',
'nextDay' => '[މާދަމާ] LT',
'nextWeek' => 'dddd LT',
'lastDay' => '[އިއްޔެ] LT',
'lastWeek' => '[ފާއިތުވި] dddd LT',
'sameElse' => 'L',
],
'meridiem' => ['މކ', 'މފ'],
'months' => $months,
'months_short' => $months,
'weekdays' => $weekdays,
'weekdays_short' => $weekdays,
'weekdays_min' => ['އާދި', 'ހޯމަ', 'އަން', 'ބުދަ', 'ބުރާ', 'ހުކު', 'ހޮނި'],
'list' => [', ', ' އަދި '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
];
src/Carbon/Lang/dv_MV.php 0000644 00000005205 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ahmed Ali
*/
$months = [
'ޖެނުއަރީ',
'ފެބްރުއަރީ',
'މާރިޗު',
'އޭޕްރީލު',
'މޭ',
'ޖޫން',
'ޖުލައި',
'އޯގަސްޓު',
'ސެޕްޓެމްބަރު',
'އޮކްޓޯބަރު',
'ނޮވެމްބަރު',
'ޑިސެމްބަރު',
];
$weekdays = [
'އާދިއްތަ',
'ހޯމަ',
'އަންގާރަ',
'ބުދަ',
'ބުރާސްފަތި',
'ހުކުރު',
'ހޮނިހިރު',
];
return [
'year' => '{0}އަހަރެއް|[1,Inf]:count އަހަރު',
'y' => '{0}އަހަރެއް|[1,Inf]:count އަހަރު',
'month' => '{0}މައްސަރެއް|[1,Inf]:count މަސް',
'm' => '{0}މައްސަރެއް|[1,Inf]:count މަސް',
'week' => '{0}ހަފްތާއެއް|[1,Inf]:count ހަފްތާ',
'w' => '{0}ހަފްތާއެއް|[1,Inf]:count ހަފްތާ',
'day' => '{0}ދުވަސް|[1,Inf]:count ދުވަސް',
'd' => '{0}ދުވަސް|[1,Inf]:count ދުވަސް',
'hour' => '{0}ގަޑިއިރެއް|[1,Inf]:count ގަޑި',
'h' => '{0}ގަޑިއިރެއް|[1,Inf]:count ގަޑި',
'minute' => '{0}މިނެޓެއް|[1,Inf]:count މިނެޓް',
'min' => '{0}މިނެޓެއް|[1,Inf]:count މިނެޓް',
'second' => '{0}ސިކުންތެއް|[1,Inf]:count ސިކުންތު',
's' => '{0}ސިކުންތެއް|[1,Inf]:count ސިކުންތު',
'ago' => ':time ކުރިން',
'from_now' => ':time ފަހުން',
'after' => ':time ފަހުން',
'before' => ':time ކުރި',
'diff_yesterday' => 'އިއްޔެ',
'diff_today' => 'މިއަދު',
'diff_tomorrow' => 'މާދަމާ',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[މިއަދު] LT',
'nextDay' => '[މާދަމާ] LT',
'nextWeek' => 'dddd LT',
'lastDay' => '[އިއްޔެ] LT',
'lastWeek' => '[ފާއިތުވި] dddd LT',
'sameElse' => 'L',
],
'meridiem' => ['މކ', 'މފ'],
'months' => $months,
'months_short' => $months,
'weekdays' => $weekdays,
'weekdays_short' => $weekdays,
'weekdays_min' => ['އާދި', 'ހޯމަ', 'އަން', 'ބުދަ', 'ބުރާ', 'ހުކު', 'ހޮނި'],
'list' => [', ', ' އަދި '],
];
src/Carbon/Lang/dyo.php 0000644 00000001776 14753612052 0010744 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'weekdays' => ['Dimas', 'Teneŋ', 'Talata', 'Alarbay', 'Aramisay', 'Arjuma', 'Sibiti'],
'weekdays_short' => ['Dim', 'Ten', 'Tal', 'Ala', 'Ara', 'Arj', 'Sib'],
'weekdays_min' => ['Dim', 'Ten', 'Tal', 'Ala', 'Ara', 'Arj', 'Sib'],
'months' => ['Sanvie', 'Fébirie', 'Mars', 'Aburil', 'Mee', 'Sueŋ', 'Súuyee', 'Ut', 'Settembar', 'Oktobar', 'Novembar', 'Disambar'],
'months_short' => ['Sa', 'Fe', 'Ma', 'Ab', 'Me', 'Su', 'Sú', 'Ut', 'Se', 'Ok', 'No', 'De'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/dz.php 0000644 00000000516 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/dz_BT.php';
src/Carbon/Lang/dz_BT.php 0000644 00000004572 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Sherubtse College bug-glibc@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'པསྱི་ལོYYཟལMMཚེསDD',
],
'months' => ['ཟླ་བ་དང་པ་', 'ཟླ་བ་གཉིས་པ་', 'ཟླ་བ་གསུམ་པ་', 'ཟླ་བ་བཞི་པ་', 'ཟླ་བ་ལྔ་ཕ་', 'ཟླ་བ་དྲུག་པ་', 'ཟླ་བ་བདུནཔ་', 'ཟླ་བ་བརྒྱད་པ་', 'ཟླ་བ་དགུ་པ་', 'ཟླ་བ་བཅུ་པ་', 'ཟླ་བ་བཅུ་གཅིག་པ་', 'ཟླ་བ་བཅུ་གཉིས་པ་'],
'months_short' => ['ཟླ་༡', 'ཟླ་༢', 'ཟླ་༣', 'ཟླ་༤', 'ཟླ་༥', 'ཟླ་༦', 'ཟླ་༧', 'ཟླ་༨', 'ཟླ་༩', 'ཟླ་༡༠', 'ཟླ་༡༡', 'ཟླ་༡༢'],
'weekdays' => ['གཟའ་ཟླ་བ་', 'གཟའ་མིག་དམར་', 'གཟའ་ལྷག་ཕ་', 'གཟའ་པུར་བུ་', 'གཟའ་པ་སངས་', 'གཟའ་སྤེན་ཕ་', 'གཟའ་ཉི་མ་'],
'weekdays_short' => ['ཟླ་', 'མིར་', 'ལྷག་', 'པུར་', 'སངས་', 'སྤེན་', 'ཉི་'],
'weekdays_min' => ['ཟླ་', 'མིར་', 'ལྷག་', 'པུར་', 'སངས་', 'སྤེན་', 'ཉི་'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ངས་ཆ', 'ཕྱི་ཆ'],
'year' => ':count ཆརཔ', // less reliable
'y' => ':count ཆརཔ', // less reliable
'a_year' => ':count ཆརཔ', // less reliable
'month' => ':count ཟླ་བ', // less reliable
'm' => ':count ཟླ་བ', // less reliable
'a_month' => ':count ཟླ་བ', // less reliable
'day' => ':count ཉི', // less reliable
'd' => ':count ཉི', // less reliable
'a_day' => ':count ཉི', // less reliable
'second' => ':count ཆ', // less reliable
's' => ':count ཆ', // less reliable
'a_second' => ':count ཆ', // less reliable
]);
src/Carbon/Lang/ebu.php 0000644 00000002275 14753612052 0010717 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['KI', 'UT'],
'weekdays' => ['Kiumia', 'Njumatatu', 'Njumaine', 'Njumatano', 'Aramithi', 'Njumaa', 'NJumamothii'],
'weekdays_short' => ['Kma', 'Tat', 'Ine', 'Tan', 'Arm', 'Maa', 'NMM'],
'weekdays_min' => ['Kma', 'Tat', 'Ine', 'Tan', 'Arm', 'Maa', 'NMM'],
'months' => ['Mweri wa mbere', 'Mweri wa kaĩri', 'Mweri wa kathatũ', 'Mweri wa kana', 'Mweri wa gatano', 'Mweri wa gatantatũ', 'Mweri wa mũgwanja', 'Mweri wa kanana', 'Mweri wa kenda', 'Mweri wa ikũmi', 'Mweri wa ikũmi na ũmwe', 'Mweri wa ikũmi na Kaĩrĩ'],
'months_short' => ['Mbe', 'Kai', 'Kat', 'Kan', 'Gat', 'Gan', 'Mug', 'Knn', 'Ken', 'Iku', 'Imw', 'Igi'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/ee.php 0000644 00000003552 14753612052 0010534 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['ŋ', 'ɣ'],
'weekdays' => ['kɔsiɖa', 'dzoɖa', 'blaɖa', 'kuɖa', 'yawoɖa', 'fiɖa', 'memleɖa'],
'weekdays_short' => ['kɔs', 'dzo', 'bla', 'kuɖ', 'yaw', 'fiɖ', 'mem'],
'weekdays_min' => ['kɔs', 'dzo', 'bla', 'kuɖ', 'yaw', 'fiɖ', 'mem'],
'months' => ['dzove', 'dzodze', 'tedoxe', 'afɔfĩe', 'dama', 'masa', 'siamlɔm', 'deasiamime', 'anyɔnyɔ', 'kele', 'adeɛmekpɔxe', 'dzome'],
'months_short' => ['dzv', 'dzd', 'ted', 'afɔ', 'dam', 'mas', 'sia', 'dea', 'any', 'kel', 'ade', 'dzm'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'a [ga] h:mm',
'LTS' => 'a [ga] h:mm:ss',
'L' => 'M/D/YYYY',
'LL' => 'MMM D [lia], YYYY',
'LLL' => 'a [ga] h:mm MMMM D [lia] YYYY',
'LLLL' => 'a [ga] h:mm dddd, MMMM D [lia] YYYY',
],
'year' => 'ƒe :count',
'y' => 'ƒe :count',
'a_year' => 'ƒe :count',
'month' => 'ɣleti :count',
'm' => 'ɣleti :count',
'a_month' => 'ɣleti :count',
'week' => 'kwasiɖa :count',
'w' => 'kwasiɖa :count',
'a_week' => 'kwasiɖa :count',
'day' => 'ŋkeke :count',
'd' => 'ŋkeke :count',
'a_day' => 'ŋkeke :count',
'hour' => 'gaƒoƒo :count',
'h' => 'gaƒoƒo :count',
'a_hour' => 'gaƒoƒo :count',
'minute' => 'miniti :count', // less reliable
'min' => 'miniti :count', // less reliable
'a_minute' => 'miniti :count', // less reliable
'second' => 'sɛkɛnd :count', // less reliable
's' => 'sɛkɛnd :count', // less reliable
'a_second' => 'sɛkɛnd :count', // less reliable
]);
src/Carbon/Lang/ee_TG.php 0000644 00000000730 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ee.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'LLL' => 'HH:mm MMMM D [lia] YYYY',
'LLLL' => 'HH:mm dddd, MMMM D [lia] YYYY',
],
]);
src/Carbon/Lang/el.php 0000644 00000007463 14753612052 0010550 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Alessandro Di Felice
* - François B
* - Tim Fish
* - Gabriel Monteagudo
* - JD Isaacks
* - yiannisdesp
* - Ilias Kasmeridis (iliaskasm)
*/
use Carbon\CarbonInterface;
return [
'year' => ':count χρόνος|:count χρόνια',
'a_year' => 'ένας χρόνος|:count χρόνια',
'y' => ':count χρ.',
'month' => ':count μήνας|:count μήνες',
'a_month' => 'ένας μήνας|:count μήνες',
'm' => ':count μήν.',
'week' => ':count εβδομάδα|:count εβδομάδες',
'a_week' => 'μια εβδομάδα|:count εβδομάδες',
'w' => ':count εβδ.',
'day' => ':count μέρα|:count μέρες',
'a_day' => 'μία μέρα|:count μέρες',
'd' => ':count μέρ.',
'hour' => ':count ώρα|:count ώρες',
'a_hour' => 'μία ώρα|:count ώρες',
'h' => ':count ώρα|:count ώρες',
'minute' => ':count λεπτό|:count λεπτά',
'a_minute' => 'ένα λεπτό|:count λεπτά',
'min' => ':count λεπ.',
'second' => ':count δευτερόλεπτο|:count δευτερόλεπτα',
'a_second' => 'λίγα δευτερόλεπτα|:count δευτερόλεπτα',
's' => ':count δευ.',
'ago' => 'πριν :time',
'from_now' => 'σε :time',
'after' => ':time μετά',
'before' => ':time πριν',
'diff_now' => 'τώρα',
'diff_today' => 'Σήμερα',
'diff_today_regexp' => 'Σήμερα(?:\\s+{})?',
'diff_yesterday' => 'χθες',
'diff_yesterday_regexp' => 'Χθες(?:\\s+{})?',
'diff_tomorrow' => 'αύριο',
'diff_tomorrow_regexp' => 'Αύριο(?:\\s+{})?',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY h:mm A',
'LLLL' => 'dddd, D MMMM YYYY h:mm A',
],
'calendar' => [
'sameDay' => '[Σήμερα {}] LT',
'nextDay' => '[Αύριο {}] LT',
'nextWeek' => 'dddd [{}] LT',
'lastDay' => '[Χθες {}] LT',
'lastWeek' => static fn (CarbonInterface $current) => match ($current->dayOfWeek) {
6 => '[το προηγούμενο] dddd [{}] LT',
default => '[την προηγούμενη] dddd [{}] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':numberη',
'meridiem' => ['ΠΜ', 'ΜΜ', 'πμ', 'μμ'],
'months' => ['Ιανουαρίου', 'Φεβρουαρίου', 'Μαρτίου', 'Απριλίου', 'Μαΐου', 'Ιουνίου', 'Ιουλίου', 'Αυγούστου', 'Σεπτεμβρίου', 'Οκτωβρίου', 'Νοεμβρίου', 'Δεκεμβρίου'],
'months_standalone' => ['Ιανουάριος', 'Φεβρουάριος', 'Μάρτιος', 'Απρίλιος', 'Μάιος', 'Ιούνιος', 'Ιούλιος', 'Αύγουστος', 'Σεπτέμβριος', 'Οκτώβριος', 'Νοέμβριος', 'Δεκέμβριος'],
'months_regexp' => '/(D[oD]?[\s,]+MMMM|L{2,4}|l{2,4})/',
'months_short' => ['Ιαν', 'Φεβ', 'Μαρ', 'Απρ', 'Μαϊ', 'Ιουν', 'Ιουλ', 'Αυγ', 'Σεπ', 'Οκτ', 'Νοε', 'Δεκ'],
'weekdays' => ['Κυριακή', 'Δευτέρα', 'Τρίτη', 'Τετάρτη', 'Πέμπτη', 'Παρασκευή', 'Σάββατο'],
'weekdays_short' => ['Κυρ', 'Δευ', 'Τρι', 'Τετ', 'Πεμ', 'Παρ', 'Σαβ'],
'weekdays_min' => ['Κυ', 'Δε', 'Τρ', 'Τε', 'Πε', 'Πα', 'Σα'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' και '],
];
src/Carbon/Lang/el_CY.php 0000644 00000000670 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Greek Debian Translation Team bug-glibc@gnu.org
*/
return array_replace_recursive(require __DIR__.'/el.php', [
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/el_GR.php 0000644 00000000646 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/el.php', [
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en.php 0000644 00000007634 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Milos Sakovic
* - Paul
* - Pete Scopes (pdscopes)
*/
return [
/*
* {1}, {0} and ]1,Inf[ are not needed as it's the default for English pluralization.
* But as some languages are using en.php as a fallback, it's better to specify it
* explicitly so those languages also fallback to English pluralization when a unit
* is missing.
*/
'year' => '{1}:count year|{0}:count years|]1,Inf[:count years',
'a_year' => '{1}a year|{0}:count years|]1,Inf[:count years',
'y' => '{1}:countyr|{0}:countyrs|]1,Inf[:countyrs',
'month' => '{1}:count month|{0}:count months|]1,Inf[:count months',
'a_month' => '{1}a month|{0}:count months|]1,Inf[:count months',
'm' => '{1}:countmo|{0}:countmos|]1,Inf[:countmos',
'week' => '{1}:count week|{0}:count weeks|]1,Inf[:count weeks',
'a_week' => '{1}a week|{0}:count weeks|]1,Inf[:count weeks',
'w' => ':countw',
'day' => '{1}:count day|{0}:count days|]1,Inf[:count days',
'a_day' => '{1}a day|{0}:count days|]1,Inf[:count days',
'd' => ':countd',
'hour' => '{1}:count hour|{0}:count hours|]1,Inf[:count hours',
'a_hour' => '{1}an hour|{0}:count hours|]1,Inf[:count hours',
'h' => ':counth',
'minute' => '{1}:count minute|{0}:count minutes|]1,Inf[:count minutes',
'a_minute' => '{1}a minute|{0}:count minutes|]1,Inf[:count minutes',
'min' => ':countm',
'second' => '{1}:count second|{0}:count seconds|]1,Inf[:count seconds',
'a_second' => '{1}a few seconds|{0}:count seconds|]1,Inf[:count seconds',
's' => ':counts',
'millisecond' => '{1}:count millisecond|{0}:count milliseconds|]1,Inf[:count milliseconds',
'a_millisecond' => '{1}a millisecond|{0}:count milliseconds|]1,Inf[:count milliseconds',
'ms' => ':countms',
'microsecond' => '{1}:count microsecond|{0}:count microseconds|]1,Inf[:count microseconds',
'a_microsecond' => '{1}a microsecond|{0}:count microseconds|]1,Inf[:count microseconds',
'µs' => ':countµs',
'ago' => ':time ago',
'from_now' => ':time from now',
'after' => ':time after',
'before' => ':time before',
'diff_now' => 'just now',
'diff_today' => 'today',
'diff_yesterday' => 'yesterday',
'diff_tomorrow' => 'tomorrow',
'diff_before_yesterday' => 'before yesterday',
'diff_after_tomorrow' => 'after tomorrow',
'period_recurrences' => '{1}once|{0}:count times|]1,Inf[:count times',
'period_interval' => 'every :interval',
'period_start_date' => 'from :date',
'period_end_date' => 'to :date',
'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
'weekdays' => ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],
'weekdays_short' => ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
'weekdays_min' => ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
'ordinal' => static function ($number) {
$lastDigit = $number % 10;
return $number.(
((int) ($number % 100 / 10) === 1) ? 'th' : (
($lastDigit === 1) ? 'st' : (
($lastDigit === 2) ? 'nd' : (
($lastDigit === 3) ? 'rd' : 'th'
)
)
)
);
},
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'MM/DD/YYYY',
'LL' => 'MMMM D, YYYY',
'LLL' => 'MMMM D, YYYY h:mm A',
'LLLL' => 'dddd, MMMM D, YYYY h:mm A',
],
'list' => [', ', ' and '],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
];
src/Carbon/Lang/en_001.php 0000644 00000000413 14753612052 0011116 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_150.php 0000644 00000000413 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_AG.php 0000644 00000000660 14753612052 0011111 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Free Software Foundation, Inc. bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
]);
src/Carbon/Lang/en_AI.php 0000644 00000000413 14753612052 0011107 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_AS.php 0000644 00000000507 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_AT.php 0000644 00000000413 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_AU.php 0000644 00000001252 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kunal Marwaha
* - François B
* - Mayank Badola
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY h:mm A',
'LLLL' => 'dddd, D MMMM YYYY h:mm A',
],
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en_BB.php 0000644 00000000413 14753612052 0011101 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_BE.php 0000644 00000000413 14753612052 0011104 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_BI.php 0000644 00000000413 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_BM.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_BS.php 0000644 00000000507 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_BW.php 0000644 00000000507 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_BZ.php 0000644 00000000507 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_CA.php 0000644 00000001247 14753612052 0011107 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Zhan Tong Zhang
* - Mayank Badola
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'YYYY-MM-DD',
'LL' => 'MMMM D, YYYY',
'LLL' => 'MMMM D, YYYY h:mm A',
'LLLL' => 'dddd, MMMM D, YYYY h:mm A',
],
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_CC.php 0000644 00000000413 14753612052 0011103 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_CH.php 0000644 00000001007 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/en_CK.php 0000644 00000000413 14753612052 0011113 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_CM.php 0000644 00000000413 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_CX.php 0000644 00000000413 14753612052 0011130 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_CY.php 0000644 00000001157 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - NehaGautam
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD-MM-YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en_DE.php 0000644 00000000413 14753612052 0011106 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_DG.php 0000644 00000000413 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_DK.php 0000644 00000000726 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Danish Standards Association bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en_DM.php 0000644 00000000507 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_ER.php 0000644 00000000413 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_FI.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_FJ.php 0000644 00000000413 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_FK.php 0000644 00000000413 14753612052 0011116 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_FM.php 0000644 00000000413 14753612052 0011120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_GB.php 0000644 00000001223 14753612052 0011106 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Mayank Badola
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en_GD.php 0000644 00000000413 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_GG.php 0000644 00000000413 14753612052 0011113 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_GH.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_GI.php 0000644 00000000413 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_GM.php 0000644 00000000413 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_GU.php 0000644 00000000507 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_GY.php 0000644 00000000413 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_HK.php 0000644 00000000675 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_IE.php 0000644 00000001252 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Martin McWhorter
* - François B
* - Chris Cartlidge
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD-MM-YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en_IL.php 0000644 00000001232 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Yoav Amit
* - François B
* - Mayank Badola
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_IM.php 0000644 00000000413 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_IN.php 0000644 00000001165 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YY',
'LL' => 'MMMM DD, YYYY',
'LLL' => 'DD MMM HH:mm',
'LLLL' => 'MMMM DD, YYYY HH:mm',
],
]);
src/Carbon/Lang/en_IO.php 0000644 00000000413 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_ISO.php 0000644 00000001046 14753612052 0011253 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'dddd, YYYY MMMM DD HH:mm',
],
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_JE.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_JM.php 0000644 00000000507 14753612052 0011130 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_KE.php 0000644 00000000507 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_KI.php 0000644 00000000413 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_KN.php 0000644 00000000413 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_KY.php 0000644 00000000413 14753612052 0011141 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_LC.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_LR.php 0000644 00000000413 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_LS.php 0000644 00000000413 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_MG.php 0000644 00000000413 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_MH.php 0000644 00000000507 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_MO.php 0000644 00000000507 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_MP.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_MS.php 0000644 00000000413 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_MT.php 0000644 00000000507 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_MU.php 0000644 00000000413 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_MW.php 0000644 00000000413 14753612052 0011141 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_MY.php 0000644 00000000413 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_NA.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_NF.php 0000644 00000000413 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_NG.php 0000644 00000000604 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/en_NL.php 0000644 00000000413 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_NR.php 0000644 00000000413 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_NU.php 0000644 00000000413 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_NZ.php 0000644 00000001252 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Mayank Badola
* - Luke McGregor
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY h:mm A',
'LLLL' => 'dddd, D MMMM YYYY h:mm A',
],
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en_PG.php 0000644 00000000413 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_PH.php 0000644 00000000675 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_PK.php 0000644 00000000507 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_PN.php 0000644 00000000413 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_PR.php 0000644 00000000507 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_PW.php 0000644 00000000413 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_RW.php 0000644 00000000413 14753612052 0011146 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SB.php 0000644 00000000413 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SC.php 0000644 00000000413 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SD.php 0000644 00000000540 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 6,
'weekend' => [5, 6],
]);
src/Carbon/Lang/en_SE.php 0000644 00000000413 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SG.php 0000644 00000001114 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'from_now' => 'in :time',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/en_SH.php 0000644 00000000413 14753612052 0011130 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SI.php 0000644 00000000413 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SL.php 0000644 00000000413 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SS.php 0000644 00000000413 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SX.php 0000644 00000000413 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_SZ.php 0000644 00000000413 14753612052 0011152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_TC.php 0000644 00000000413 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_TK.php 0000644 00000000413 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_TO.php 0000644 00000000413 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_TT.php 0000644 00000000507 14753612052 0011151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_TV.php 0000644 00000000413 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_TZ.php 0000644 00000000413 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_UG.php 0000644 00000000413 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_UM.php 0000644 00000000507 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_US.php 0000644 00000000507 14753612052 0011151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_US_Posix.php 0000644 00000000416 14753612052 0012332 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en_US.php';
src/Carbon/Lang/en_VC.php 0000644 00000000413 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_VG.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_VI.php 0000644 00000000507 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_VU.php 0000644 00000000413 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/en.php';
src/Carbon/Lang/en_WS.php 0000644 00000000507 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/en_ZA.php 0000644 00000001151 14753612052 0011130 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YY',
'LL' => 'MMMM DD, YYYY',
'LLL' => 'DD MMM HH:mm',
'LLLL' => 'MMMM DD, YYYY HH:mm',
],
]);
src/Carbon/Lang/en_ZM.php 0000644 00000000654 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - ANLoc Martin Benjamin locales@africanlocalization.net
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
]);
src/Carbon/Lang/en_ZW.php 0000644 00000000507 14753612052 0011162 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/eo.php 0000644 00000005152 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - Mia Nordentoft
* - JD Isaacks
*/
return [
'year' => ':count jaro|:count jaroj',
'a_year' => 'jaro|:count jaroj',
'y' => ':count j.',
'month' => ':count monato|:count monatoj',
'a_month' => 'monato|:count monatoj',
'm' => ':count mo.',
'week' => ':count semajno|:count semajnoj',
'a_week' => 'semajno|:count semajnoj',
'w' => ':count sem.',
'day' => ':count tago|:count tagoj',
'a_day' => 'tago|:count tagoj',
'd' => ':count t.',
'hour' => ':count horo|:count horoj',
'a_hour' => 'horo|:count horoj',
'h' => ':count h.',
'minute' => ':count minuto|:count minutoj',
'a_minute' => 'minuto|:count minutoj',
'min' => ':count min.',
'second' => ':count sekundo|:count sekundoj',
'a_second' => 'sekundoj|:count sekundoj',
's' => ':count sek.',
'ago' => 'antaŭ :time',
'from_now' => 'post :time',
'after' => ':time poste',
'before' => ':time antaŭe',
'diff_yesterday' => 'Hieraŭ',
'diff_yesterday_regexp' => 'Hieraŭ(?:\\s+je)?',
'diff_today' => 'Hodiaŭ',
'diff_today_regexp' => 'Hodiaŭ(?:\\s+je)?',
'diff_tomorrow' => 'Morgaŭ',
'diff_tomorrow_regexp' => 'Morgaŭ(?:\\s+je)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'D[-a de] MMMM, YYYY',
'LLL' => 'D[-a de] MMMM, YYYY HH:mm',
'LLLL' => 'dddd, [la] D[-a de] MMMM, YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Hodiaŭ je] LT',
'nextDay' => '[Morgaŭ je] LT',
'nextWeek' => 'dddd [je] LT',
'lastDay' => '[Hieraŭ je] LT',
'lastWeek' => '[pasinta] dddd [je] LT',
'sameElse' => 'L',
],
'ordinal' => ':numbera',
'meridiem' => ['a.t.m.', 'p.t.m.'],
'months' => ['januaro', 'februaro', 'marto', 'aprilo', 'majo', 'junio', 'julio', 'aŭgusto', 'septembro', 'oktobro', 'novembro', 'decembro'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aŭg', 'sep', 'okt', 'nov', 'dec'],
'weekdays' => ['dimanĉo', 'lundo', 'mardo', 'merkredo', 'ĵaŭdo', 'vendredo', 'sabato'],
'weekdays_short' => ['dim', 'lun', 'mard', 'merk', 'ĵaŭ', 'ven', 'sab'],
'weekdays_min' => ['di', 'lu', 'ma', 'me', 'ĵa', 've', 'sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' kaj '],
];
src/Carbon/Lang/es.php 0000644 00000010460 14753612052 0010546 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kunal Marwaha
* - kostas
* - François B
* - Tim Fish
* - Claire Coloma
* - Steven Heinrich
* - JD Isaacks
* - Raphael Amorim
* - Jorge Y. Castillo
* - Víctor Díaz
* - Diego
* - Sebastian Thierer
* - quinterocesar
* - Daniel Commesse Liévanos (danielcommesse)
* - Pete Scopes (pdscopes)
* - gam04
*/
use Carbon\CarbonInterface;
return [
'year' => ':count año|:count años',
'a_year' => 'un año|:count años',
'y' => ':count año|:count años',
'month' => ':count mes|:count meses',
'a_month' => 'un mes|:count meses',
'm' => ':count mes|:count meses',
'week' => ':count semana|:count semanas',
'a_week' => 'una semana|:count semanas',
'w' => ':countsem',
'day' => ':count día|:count días',
'a_day' => 'un día|:count días',
'd' => ':countd',
'hour' => ':count hora|:count horas',
'a_hour' => 'una hora|:count horas',
'h' => ':counth',
'minute' => ':count minuto|:count minutos',
'a_minute' => 'un minuto|:count minutos',
'min' => ':countm',
'second' => ':count segundo|:count segundos',
'a_second' => 'unos segundos|:count segundos',
's' => ':counts',
'millisecond' => ':count milisegundo|:count milisegundos',
'a_millisecond' => 'un milisegundo|:count milisegundos',
'ms' => ':countms',
'microsecond' => ':count microsegundo|:count microsegundos',
'a_microsecond' => 'un microsegundo|:count microsegundos',
'µs' => ':countµs',
'ago' => 'hace :time',
'from_now' => 'en :time',
'after' => ':time después',
'before' => ':time antes',
'diff_now' => 'ahora mismo',
'diff_today' => 'hoy',
'diff_today_regexp' => 'hoy(?:\\s+a)?(?:\\s+las)?',
'diff_yesterday' => 'ayer',
'diff_yesterday_regexp' => 'ayer(?:\\s+a)?(?:\\s+las)?',
'diff_tomorrow' => 'mañana',
'diff_tomorrow_regexp' => 'mañana(?:\\s+a)?(?:\\s+las)?',
'diff_before_yesterday' => 'anteayer',
'diff_after_tomorrow' => 'pasado mañana',
'period_recurrences' => 'una vez|:count veces',
'period_interval' => 'cada :interval',
'period_start_date' => 'de :date',
'period_end_date' => 'a :date',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D [de] MMMM [de] YYYY',
'LLL' => 'D [de] MMMM [de] YYYY H:mm',
'LLLL' => 'dddd, D [de] MMMM [de] YYYY H:mm',
],
'calendar' => [
'sameDay' => static function (CarbonInterface $current) {
return '[hoy a la'.($current->hour !== 1 ? 's' : '').'] LT';
},
'nextDay' => static function (CarbonInterface $current) {
return '[mañana a la'.($current->hour !== 1 ? 's' : '').'] LT';
},
'nextWeek' => static function (CarbonInterface $current) {
return 'dddd [a la'.($current->hour !== 1 ? 's' : '').'] LT';
},
'lastDay' => static function (CarbonInterface $current) {
return '[ayer a la'.($current->hour !== 1 ? 's' : '').'] LT';
},
'lastWeek' => static function (CarbonInterface $current) {
return '[el] dddd [pasado a la'.($current->hour !== 1 ? 's' : '').'] LT';
},
'sameElse' => 'L',
],
'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'],
'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],
'mmm_suffix' => '.',
'ordinal' => ':numberº',
'weekdays' => ['domingo', 'lunes', 'martes', 'miércoles', 'jueves', 'viernes', 'sábado'],
'weekdays_short' => ['dom.', 'lun.', 'mar.', 'mié.', 'jue.', 'vie.', 'sáb.'],
'weekdays_min' => ['do', 'lu', 'ma', 'mi', 'ju', 'vi', 'sá'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' y '],
'meridiem' => ['a. m.', 'p. m.'],
'ordinal_words' => [
'of' => 'de',
'first' => 'primer',
'second' => 'segundo',
'third' => 'tercer',
'fourth' => 'cuarto',
'fifth' => 'quinto',
'last' => 'último',
],
];
src/Carbon/Lang/es_419.php 0000644 00000000646 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_AR.php 0000644 00000000646 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_BO.php 0000644 00000000646 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_BR.php 0000644 00000000507 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/es_BZ.php 0000644 00000000507 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/es_CL.php 0000644 00000000646 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_CO.php 0000644 00000000646 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_CR.php 0000644 00000000701 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Free Software Foundation, Inc. bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_CU.php 0000644 00000000507 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/es_DO.php 0000644 00000001253 14753612052 0011130 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - kostas
* - François B
* - Tim Fish
* - Chiel Robben
* - Claire Coloma
* - Steven Heinrich
* - JD Isaacks
* - Raphael Amorim
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'diff_before_yesterday' => 'anteayer',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'LLL' => 'D [de] MMMM [de] YYYY h:mm A',
'LLLL' => 'dddd, D [de] MMMM [de] YYYY h:mm A',
],
]);
src/Carbon/Lang/es_EA.php 0000644 00000000507 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/es_EC.php 0000644 00000000646 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_ES.php 0000644 00000000504 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return require __DIR__.'/es.php';
src/Carbon/Lang/es_GQ.php 0000644 00000000507 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/es_GT.php 0000644 00000000646 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_HN.php 0000644 00000000646 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_IC.php 0000644 00000000507 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/es_MX.php 0000644 00000000717 14753612052 0011156 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'diff_before_yesterday' => 'antier',
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_NI.php 0000644 00000000701 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Free Software Foundation, Inc. bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_PA.php 0000644 00000000646 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_PE.php 0000644 00000000646 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_PH.php 0000644 00000001071 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/M/yy',
'LL' => 'D MMM YYYY',
'LLL' => 'D [de] MMMM [de] YYYY h:mm a',
'LLLL' => 'dddd, D [de] MMMM [de] YYYY h:mm a',
],
]);
src/Carbon/Lang/es_PR.php 0000644 00000000701 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Free Software Foundation, Inc. bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_PY.php 0000644 00000000646 14753612052 0011163 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_SV.php 0000644 00000001203 14753612052 0011151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'],
'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_US.php 0000644 00000001553 14753612052 0011160 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kunal Marwaha
* - Josh Soref
* - Jørn Ølmheim
* - Craig Patik
* - bustta
* - François B
* - Tim Fish
* - Claire Coloma
* - Steven Heinrich
* - JD Isaacks
* - Raphael Amorim
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'diff_before_yesterday' => 'anteayer',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'MM/DD/YYYY',
'LL' => 'MMMM [de] D [de] YYYY',
'LLL' => 'MMMM [de] D [de] YYYY h:mm A',
'LLLL' => 'dddd, MMMM [de] D [de] YYYY h:mm A',
],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_UY.php 0000644 00000001240 14753612052 0011157 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'setiembre', 'octubre', 'noviembre', 'diciembre'],
'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'set', 'oct', 'nov', 'dic'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/es_VE.php 0000644 00000000646 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/es.php', [
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/et.php 0000644 00000005443 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Andres Ivanov
* - Tsutomu Kuroda
* - tjku
* - Max Melentiev
* - Juanito Fatas
* - RM87
* - Akira Matsuda
* - Christopher Dell
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Esko Lehtme
* - Mart Karu
* - Nicolás Hock Isaza
* - Kevin Valdek
* - Zahhar Kirillov
* - João Magalhães
* - Ingmar
* - Illimar Tambek
* - Mihkel
*/
return [
'year' => ':count aasta|:count aastat',
'y' => ':count a',
'month' => ':count kuu|:count kuud',
'm' => ':count k',
'week' => ':count nädal|:count nädalat',
'w' => ':count näd',
'day' => ':count päev|:count päeva',
'd' => ':count p',
'hour' => ':count tund|:count tundi',
'h' => ':count t',
'minute' => ':count minut|:count minutit',
'min' => ':count min',
'second' => ':count sekund|:count sekundit',
's' => ':count s',
'ago' => ':time tagasi',
'from_now' => ':time pärast',
'after' => ':time pärast',
'before' => ':time enne',
'year_from_now' => ':count aasta',
'month_from_now' => ':count kuu',
'week_from_now' => ':count nädala',
'day_from_now' => ':count päeva',
'hour_from_now' => ':count tunni',
'minute_from_now' => ':count minuti',
'second_from_now' => ':count sekundi',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'diff_now' => 'nüüd',
'diff_today' => 'täna',
'diff_yesterday' => 'eile',
'diff_tomorrow' => 'homme',
'diff_before_yesterday' => 'üleeile',
'diff_after_tomorrow' => 'ülehomme',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY HH:mm',
'LLLL' => 'dddd, D. MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[täna] LT',
'nextDay' => '[homme] LT',
'lastDay' => '[eile] LT',
'nextWeek' => 'dddd LT',
'lastWeek' => '[eelmine] dddd LT',
'sameElse' => 'L',
],
'months' => ['jaanuar', 'veebruar', 'märts', 'aprill', 'mai', 'juuni', 'juuli', 'august', 'september', 'oktoober', 'november', 'detsember'],
'months_short' => ['jaan', 'veebr', 'märts', 'apr', 'mai', 'juuni', 'juuli', 'aug', 'sept', 'okt', 'nov', 'dets'],
'weekdays' => ['pühapäev', 'esmaspäev', 'teisipäev', 'kolmapäev', 'neljapäev', 'reede', 'laupäev'],
'weekdays_short' => ['P', 'E', 'T', 'K', 'N', 'R', 'L'],
'weekdays_min' => ['P', 'E', 'T', 'K', 'N', 'R', 'L'],
'list' => [', ', ' ja '],
'meridiem' => ['enne lõunat', 'pärast lõunat'],
];
src/Carbon/Lang/et_EE.php 0000644 00000000413 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/et.php';
src/Carbon/Lang/eu.php 0000644 00000004360 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - JD Isaacks
*/
return [
'year' => 'urte bat|:count urte',
'y' => 'Urte 1|:count urte',
'month' => 'hilabete bat|:count hilabete',
'm' => 'Hile 1|:count hile',
'week' => 'Aste 1|:count aste',
'w' => 'Aste 1|:count aste',
'day' => 'egun bat|:count egun',
'd' => 'Egun 1|:count egun',
'hour' => 'ordu bat|:count ordu',
'h' => 'Ordu 1|:count ordu',
'minute' => 'minutu bat|:count minutu',
'min' => 'Minutu 1|:count minutu',
'second' => 'segundo batzuk|:count segundo',
's' => 'Segundu 1|:count segundu',
'ago' => 'duela :time',
'from_now' => ':time barru',
'after' => ':time geroago',
'before' => ':time lehenago',
'diff_now' => 'orain',
'diff_today' => 'gaur',
'diff_yesterday' => 'atzo',
'diff_tomorrow' => 'bihar',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'YYYY[ko] MMMM[ren] D[a]',
'LLL' => 'YYYY[ko] MMMM[ren] D[a] HH:mm',
'LLLL' => 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',
],
'calendar' => [
'sameDay' => '[gaur] LT[etan]',
'nextDay' => '[bihar] LT[etan]',
'nextWeek' => 'dddd LT[etan]',
'lastDay' => '[atzo] LT[etan]',
'lastWeek' => '[aurreko] dddd LT[etan]',
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['urtarrila', 'otsaila', 'martxoa', 'apirila', 'maiatza', 'ekaina', 'uztaila', 'abuztua', 'iraila', 'urria', 'azaroa', 'abendua'],
'months_short' => ['urt.', 'ots.', 'mar.', 'api.', 'mai.', 'eka.', 'uzt.', 'abu.', 'ira.', 'urr.', 'aza.', 'abe.'],
'weekdays' => ['igandea', 'astelehena', 'asteartea', 'asteazkena', 'osteguna', 'ostirala', 'larunbata'],
'weekdays_short' => ['ig.', 'al.', 'ar.', 'az.', 'og.', 'ol.', 'lr.'],
'weekdays_min' => ['ig', 'al', 'ar', 'az', 'og', 'ol', 'lr'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' eta '],
'meridiem' => ['g', 'a'],
];
src/Carbon/Lang/eu_ES.php 0000644 00000000413 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/eu.php';
src/Carbon/Lang/ewo.php 0000644 00000004133 14753612052 0010731 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['kíkíríg', 'ngəgógəle'],
'weekdays' => ['sɔ́ndɔ', 'mɔ́ndi', 'sɔ́ndɔ məlú mə́bɛ̌', 'sɔ́ndɔ məlú mə́lɛ́', 'sɔ́ndɔ məlú mə́nyi', 'fúladé', 'séradé'],
'weekdays_short' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'fúl', 'sér'],
'weekdays_min' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'fúl', 'sér'],
'months' => ['ngɔn osú', 'ngɔn bɛ̌', 'ngɔn lála', 'ngɔn nyina', 'ngɔn tána', 'ngɔn saməna', 'ngɔn zamgbála', 'ngɔn mwom', 'ngɔn ebulú', 'ngɔn awóm', 'ngɔn awóm ai dziá', 'ngɔn awóm ai bɛ̌'],
'months_short' => ['ngo', 'ngb', 'ngl', 'ngn', 'ngt', 'ngs', 'ngz', 'ngm', 'nge', 'nga', 'ngad', 'ngab'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
// Too unreliable
/*
'year' => ':count mbu', // less reliable
'y' => ':count mbu', // less reliable
'a_year' => ':count mbu', // less reliable
'month' => ':count ngòn', // less reliable
'm' => ':count ngòn', // less reliable
'a_month' => ':count ngòn', // less reliable
'week' => ':count mësë', // less reliable
'w' => ':count mësë', // less reliable
'a_week' => ':count mësë', // less reliable
'day' => ':count mësë', // less reliable
'd' => ':count mësë', // less reliable
'a_day' => ':count mësë', // less reliable
'hour' => ':count awola', // less reliable
'h' => ':count awola', // less reliable
'a_hour' => ':count awola', // less reliable
'minute' => ':count awola', // less reliable
'min' => ':count awola', // less reliable
'a_minute' => ':count awola', // less reliable
*/
]);
src/Carbon/Lang/fa.php 0000644 00000007775 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - Nasser Ghiasi
* - JD Isaacks
* - Hossein Jabbari
* - nimamo
* - hafezdivandari
* - Hassan Pezeshk (hpez)
*/
return [
'year' => ':count سال',
'a_year' => 'یک سال'.'|:count '.'سال',
'y' => ':count سال',
'month' => ':count ماه',
'a_month' => 'یک ماه'.'|:count '.'ماه',
'm' => ':count ماه',
'week' => ':count هفته',
'a_week' => 'یک هفته'.'|:count '.'هفته',
'w' => ':count هفته',
'day' => ':count روز',
'a_day' => 'یک روز'.'|:count '.'روز',
'd' => ':count روز',
'hour' => ':count ساعت',
'a_hour' => 'یک ساعت'.'|:count '.'ساعت',
'h' => ':count ساعت',
'minute' => ':count دقیقه',
'a_minute' => 'یک دقیقه'.'|:count '.'دقیقه',
'min' => ':count دقیقه',
'second' => ':count ثانیه',
's' => ':count ثانیه',
'ago' => ':time پیش',
'from_now' => ':time دیگر',
'after' => ':time پس از',
'before' => ':time پیش از',
'diff_now' => 'اکنون',
'diff_today' => 'امروز',
'diff_today_regexp' => 'امروز(?:\\s+ساعت)?',
'diff_yesterday' => 'دیروز',
'diff_yesterday_regexp' => 'دیروز(?:\\s+ساعت)?',
'diff_tomorrow' => 'فردا',
'diff_tomorrow_regexp' => 'فردا(?:\\s+ساعت)?',
'formats' => [
'LT' => 'OH:Om',
'LTS' => 'OH:Om:Os',
'L' => 'OD/OM/OY',
'LL' => 'OD MMMM OY',
'LLL' => 'OD MMMM OY OH:Om',
'LLLL' => 'dddd, OD MMMM OY OH:Om',
],
'calendar' => [
'sameDay' => '[امروز ساعت] LT',
'nextDay' => '[فردا ساعت] LT',
'nextWeek' => 'dddd [ساعت] LT',
'lastDay' => '[دیروز ساعت] LT',
'lastWeek' => 'dddd [پیش] [ساعت] LT',
'sameElse' => 'L',
],
'ordinal' => ':timeم',
'meridiem' => ['قبل از ظهر', 'بعد از ظهر'],
'months' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
'months_short' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
'weekdays' => ['یکشنبه', 'دوشنبه', 'سهشنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'],
'weekdays_short' => ['یکشنبه', 'دوشنبه', 'سهشنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'],
'weekdays_min' => ['ی', 'د', 'س', 'چ', 'پ', 'ج', 'ش'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'list' => ['، ', ' و '],
'alt_numbers' => ['۰۰', '۰۱', '۰۲', '۰۳', '۰۴', '۰۵', '۰۶', '۰۷', '۰۸', '۰۹', '۱۰', '۱۱', '۱۲', '۱۳', '۱۴', '۱۵', '۱۶', '۱۷', '۱۸', '۱۹', '۲۰', '۲۱', '۲۲', '۲۳', '۲۴', '۲۵', '۲۶', '۲۷', '۲۸', '۲۹', '۳۰', '۳۱', '۳۲', '۳۳', '۳۴', '۳۵', '۳۶', '۳۷', '۳۸', '۳۹', '۴۰', '۴۱', '۴۲', '۴۳', '۴۴', '۴۵', '۴۶', '۴۷', '۴۸', '۴۹', '۵۰', '۵۱', '۵۲', '۵۳', '۵۴', '۵۵', '۵۶', '۵۷', '۵۸', '۵۹', '۶۰', '۶۱', '۶۲', '۶۳', '۶۴', '۶۵', '۶۶', '۶۷', '۶۸', '۶۹', '۷۰', '۷۱', '۷۲', '۷۳', '۷۴', '۷۵', '۷۶', '۷۷', '۷۸', '۷۹', '۸۰', '۸۱', '۸۲', '۸۳', '۸۴', '۸۵', '۸۶', '۸۷', '۸۸', '۸۹', '۹۰', '۹۱', '۹۲', '۹۳', '۹۴', '۹۵', '۹۶', '۹۷', '۹۸', '۹۹'],
'months_short_standalone' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
'weekend' => [5, 5],
];
src/Carbon/Lang/fa_AF.php 0000644 00000001014 14753612052 0011066 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fa.php', [
'meridiem' => ['ق', 'ب'],
'weekend' => [4, 5],
'formats' => [
'L' => 'OY/OM/OD',
'LL' => 'OD MMM OY',
'LLL' => 'OD MMMM OY، H:mm',
'LLLL' => 'dddd OD MMMM OY، H:mm',
],
]);
src/Carbon/Lang/fa_IR.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fa.php';
src/Carbon/Lang/ff.php 0000644 00000004227 14753612052 0010536 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'months' => ['siilo', 'colte', 'mbooy', 'seeɗto', 'duujal', 'korse', 'morso', 'juko', 'siilto', 'yarkomaa', 'jolal', 'bowte'],
'months_short' => ['sii', 'col', 'mbo', 'see', 'duu', 'kor', 'mor', 'juk', 'slt', 'yar', 'jol', 'bow'],
'weekdays' => ['dewo', 'aaɓnde', 'mawbaare', 'njeslaare', 'naasaande', 'mawnde', 'hoore-biir'],
'weekdays_short' => ['dew', 'aaɓ', 'maw', 'nje', 'naa', 'mwd', 'hbi'],
'weekdays_min' => ['dew', 'aaɓ', 'maw', 'nje', 'naa', 'mwd', 'hbi'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['subaka', 'kikiiɗe'],
'year' => ':count baret', // less reliable
'y' => ':count baret', // less reliable
'a_year' => ':count baret', // less reliable
'month' => ':count lewru', // less reliable
'm' => ':count lewru', // less reliable
'a_month' => ':count lewru', // less reliable
'week' => ':count naange', // less reliable
'w' => ':count naange', // less reliable
'a_week' => ':count naange', // less reliable
'day' => ':count dian', // less reliable
'd' => ':count dian', // less reliable
'a_day' => ':count dian', // less reliable
'hour' => ':count montor', // less reliable
'h' => ':count montor', // less reliable
'a_hour' => ':count montor', // less reliable
'minute' => ':count tokossuoum', // less reliable
'min' => ':count tokossuoum', // less reliable
'a_minute' => ':count tokossuoum', // less reliable
'second' => ':count tenen', // less reliable
's' => ':count tenen', // less reliable
'a_second' => ':count tenen', // less reliable
]);
src/Carbon/Lang/ff_CM.php 0000644 00000000413 14753612052 0011106 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ff.php';
src/Carbon/Lang/ff_GN.php 0000644 00000000413 14753612052 0011113 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ff.php';
src/Carbon/Lang/ff_MR.php 0000644 00000001011 14753612052 0011120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ff.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/ff_SN.php 0000644 00000000536 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Pular-Fulfulde.org Ibrahima Sarr admin@pulaar-fulfulde.org
*/
return require __DIR__.'/ff.php';
src/Carbon/Lang/fi.php 0000644 00000005352 14753612052 0010541 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Janne Warén
* - digitalfrost
* - Tsutomu Kuroda
* - Roope Salmi
* - tjku
* - Max Melentiev
* - Sami Haahtinen
* - Teemu Leisti
* - Artem Ignatyev
* - Akira Matsuda
* - Christopher Dell
* - Enrique Vidal
* - Simone Carletti
* - Robert Bjarnason
* - Aaron Patterson
* - Nicolás Hock Isaza
* - Tom Hughes
* - Sven Fuchs
* - Petri Kivikangas
* - Nizar Jouini
* - Marko Seppae
* - Tomi Mynttinen (Pikseli)
* - Petteri (powergrip)
*/
return [
'year' => ':count vuosi|:count vuotta',
'y' => ':count v',
'month' => ':count kuukausi|:count kuukautta',
'm' => ':count kk',
'week' => ':count viikko|:count viikkoa',
'w' => ':count vk',
'day' => ':count päivä|:count päivää',
'd' => ':count pv',
'hour' => ':count tunti|:count tuntia',
'h' => ':count t',
'minute' => ':count minuutti|:count minuuttia',
'min' => ':count min',
'second' => ':count sekunti|:count sekuntia',
'a_second' => 'muutama sekunti|:count sekuntia',
's' => ':count s',
'ago' => ':time sitten',
'from_now' => ':time päästä',
'year_from_now' => ':count vuoden',
'month_from_now' => ':count kuukauden',
'week_from_now' => ':count viikon',
'day_from_now' => ':count päivän',
'hour_from_now' => ':count tunnin',
'minute_from_now' => ':count minuutin',
'second_from_now' => ':count sekunnin',
'after' => ':time sen jälkeen',
'before' => ':time ennen',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' ja '],
'diff_now' => 'nyt',
'diff_yesterday' => 'eilen',
'diff_tomorrow' => 'huomenna',
'formats' => [
'LT' => 'HH.mm',
'LTS' => 'HH.mm:ss',
'L' => 'D.M.YYYY',
'LL' => 'dddd D. MMMM[ta] YYYY',
'll' => 'ddd D. MMM YYYY',
'LLL' => 'D.MM. HH.mm',
'LLLL' => 'D. MMMM[ta] YYYY HH.mm',
'llll' => 'D. MMM YY HH.mm',
],
'weekdays' => ['sunnuntai', 'maanantai', 'tiistai', 'keskiviikko', 'torstai', 'perjantai', 'lauantai'],
'weekdays_short' => ['su', 'ma', 'ti', 'ke', 'to', 'pe', 'la'],
'weekdays_min' => ['su', 'ma', 'ti', 'ke', 'to', 'pe', 'la'],
'months' => ['tammikuu', 'helmikuu', 'maaliskuu', 'huhtikuu', 'toukokuu', 'kesäkuu', 'heinäkuu', 'elokuu', 'syyskuu', 'lokakuu', 'marraskuu', 'joulukuu'],
'months_short' => ['tammi', 'helmi', 'maalis', 'huhti', 'touko', 'kesä', 'heinä', 'elo', 'syys', 'loka', 'marras', 'joulu'],
'meridiem' => ['aamupäivä', 'iltapäivä'],
];
src/Carbon/Lang/fi_FI.php 0000644 00000000413 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fi.php';
src/Carbon/Lang/fil.php 0000644 00000000517 14753612052 0010713 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/fil_PH.php';
src/Carbon/Lang/fil_PH.php 0000644 00000003516 14753612052 0011304 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Rene Torres Rene Torres, Pablo Saratxaga rgtorre@rocketmail.com, pablo@mandrakesoft.com
* - Jaycee Mariano (alohajaycee)
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'MM/DD/YY',
],
'months' => ['Enero', 'Pebrero', 'Marso', 'Abril', 'Mayo', 'Hunyo', 'Hulyo', 'Agosto', 'Setyembre', 'Oktubre', 'Nobyembre', 'Disyembre'],
'months_short' => ['Ene', 'Peb', 'Mar', 'Abr', 'May', 'Hun', 'Hul', 'Ago', 'Set', 'Okt', 'Nob', 'Dis'],
'weekdays' => ['Linggo', 'Lunes', 'Martes', 'Miyerkoles', 'Huwebes', 'Biyernes', 'Sabado'],
'weekdays_short' => ['Lin', 'Lun', 'Mar', 'Miy', 'Huw', 'Biy', 'Sab'],
'weekdays_min' => ['Lin', 'Lun', 'Mar', 'Miy', 'Huw', 'Biy', 'Sab'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['N.U.', 'N.H.'],
'before' => ':time bago',
'after' => ':time pagkatapos',
'year' => ':count taon',
'y' => ':count taon',
'a_year' => ':count taon',
'month' => ':count buwan',
'm' => ':count buwan',
'a_month' => ':count buwan',
'week' => ':count linggo',
'w' => ':count linggo',
'a_week' => ':count linggo',
'day' => ':count araw',
'd' => ':count araw',
'a_day' => ':count araw',
'hour' => ':count oras',
'h' => ':count oras',
'a_hour' => ':count oras',
'minute' => ':count minuto',
'min' => ':count minuto',
'a_minute' => ':count minuto',
'second' => ':count segundo',
's' => ':count segundo',
'a_second' => ':count segundo',
'ago' => ':time ang nakalipas',
'from_now' => 'sa :time',
]);
src/Carbon/Lang/fo.php 0000644 00000004636 14753612052 0010553 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kristian Sakarisson
* - François B
* - JD Isaacks
* - Sverri Mohr Olsen
*/
return [
'year' => 'eitt ár|:count ár',
'y' => ':count ár|:count ár',
'month' => 'ein mánaði|:count mánaðir',
'm' => ':count mánaður|:count mánaðir',
'week' => ':count vika|:count vikur',
'w' => ':count vika|:count vikur',
'day' => 'ein dagur|:count dagar',
'd' => ':count dag|:count dagar',
'hour' => 'ein tími|:count tímar',
'h' => ':count tími|:count tímar',
'minute' => 'ein minutt|:count minuttir',
'min' => ':count minutt|:count minuttir',
'second' => 'fá sekund|:count sekundir',
's' => ':count sekund|:count sekundir',
'ago' => ':time síðani',
'from_now' => 'um :time',
'after' => ':time aftaná',
'before' => ':time áðrenn',
'diff_today' => 'Í',
'diff_yesterday' => 'Í',
'diff_yesterday_regexp' => 'Í(?:\\s+gjár)?(?:\\s+kl.)?',
'diff_tomorrow' => 'Í',
'diff_tomorrow_regexp' => 'Í(?:\\s+morgin)?(?:\\s+kl.)?',
'diff_today_regexp' => 'Í(?:\\s+dag)?(?:\\s+kl.)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D. MMMM, YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Í dag kl.] LT',
'nextDay' => '[Í morgin kl.] LT',
'nextWeek' => 'dddd [kl.] LT',
'lastDay' => '[Í gjár kl.] LT',
'lastWeek' => '[síðstu] dddd [kl] LT',
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['januar', 'februar', 'mars', 'apríl', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
'weekdays' => ['sunnudagur', 'mánadagur', 'týsdagur', 'mikudagur', 'hósdagur', 'fríggjadagur', 'leygardagur'],
'weekdays_short' => ['sun', 'mán', 'týs', 'mik', 'hós', 'frí', 'ley'],
'weekdays_min' => ['su', 'má', 'tý', 'mi', 'hó', 'fr', 'le'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' og '],
];
src/Carbon/Lang/fo_DK.php 0000644 00000000723 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fo.php', [
'formats' => [
'L' => 'DD.MM.yy',
'LL' => 'DD.MM.YYYY',
'LLL' => 'D. MMMM YYYY, HH:mm',
'LLLL' => 'dddd, D. MMMM YYYY, HH:mm',
],
]);
src/Carbon/Lang/fo_FO.php 0000644 00000000413 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fo.php';
src/Carbon/Lang/fr.php 0000644 00000010365 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Dieter Sting
* - François B
* - Maxime VALY
* - JD Isaacks
* - Dieter Sting
* - François B
* - JD Isaacks
* - Sebastian Thierer
* - Fastfuel
* - Pete Scopes (pdscopes)
*/
return [
'millennium' => ':count millénaire|:count millénaires',
'a_millennium' => 'un millénaire|:count millénaires',
'century' => ':count siècle|:count siècles',
'a_century' => 'un siècle|:count siècles',
'decade' => ':count décennie|:count décennies',
'a_decade' => 'une décennie|:count décennies',
'year' => ':count an|:count ans',
'a_year' => 'un an|:count ans',
'y' => ':count an|:count ans',
'month' => ':count mois|:count mois',
'a_month' => 'un mois|:count mois',
'm' => ':count mois',
'week' => ':count semaine|:count semaines',
'a_week' => 'une semaine|:count semaines',
'w' => ':count sem.',
'day' => ':count jour|:count jours',
'a_day' => 'un jour|:count jours',
'd' => ':count j',
'hour' => ':count heure|:count heures',
'a_hour' => 'une heure|:count heures',
'h' => ':count h',
'minute' => ':count minute|:count minutes',
'a_minute' => 'une minute|:count minutes',
'min' => ':count min',
'second' => ':count seconde|:count secondes',
'a_second' => 'quelques secondes|:count secondes',
's' => ':count s',
'millisecond' => ':count milliseconde|:count millisecondes',
'a_millisecond' => 'une milliseconde|:count millisecondes',
'ms' => ':countms',
'microsecond' => ':count microseconde|:count microsecondes',
'a_microsecond' => 'une microseconde|:count microsecondes',
'µs' => ':countµs',
'ago' => 'il y a :time',
'from_now' => 'dans :time',
'after' => ':time après',
'before' => ':time avant',
'diff_now' => "à l'instant",
'diff_today' => "aujourd'hui",
'diff_today_regexp' => "aujourd'hui(?:\s+à)?",
'diff_yesterday' => 'hier',
'diff_yesterday_regexp' => 'hier(?:\s+à)?',
'diff_tomorrow' => 'demain',
'diff_tomorrow_regexp' => 'demain(?:\s+à)?',
'diff_before_yesterday' => 'avant-hier',
'diff_after_tomorrow' => 'après-demain',
'period_recurrences' => ':count fois',
'period_interval' => 'tous les :interval',
'period_start_date' => 'de :date',
'period_end_date' => 'à :date',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Aujourd’hui à] LT',
'nextDay' => '[Demain à] LT',
'nextWeek' => 'dddd [à] LT',
'lastDay' => '[Hier à] LT',
'lastWeek' => 'dddd [dernier à] LT',
'sameElse' => 'L',
],
'months' => ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
'months_short' => ['janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.'],
'weekdays' => ['dimanche', 'lundi', 'mardi', 'mercredi', 'jeudi', 'vendredi', 'samedi'],
'weekdays_short' => ['dim.', 'lun.', 'mar.', 'mer.', 'jeu.', 'ven.', 'sam.'],
'weekdays_min' => ['di', 'lu', 'ma', 'me', 'je', 've', 'sa'],
'ordinal' => static function ($number, $period) {
return match ($period) {
// In French, only the first has to be ordinal, other number remains cardinal
// @link https://fr.wikihow.com/%C3%A9crire-la-date-en-fran%C3%A7ais
'D' => $number.($number === 1 ? 'er' : ''),
default => $number.($number === 1 ? 'er' : 'e'),
'w', 'W' => $number.($number === 1 ? 're' : 'e'),
};
},
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' et '],
'ordinal_words' => [
'of' => 'de',
'first' => 'premier',
'second' => 'deuxième',
'third' => 'troisième',
'fourth' => 'quatrième',
'fifth' => 'cinquième',
'last' => 'dernier',
],
];
src/Carbon/Lang/fr_BE.php 0000644 00000000721 14753612052 0011113 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'months_short' => ['jan', 'fév', 'mar', 'avr', 'mai', 'jun', 'jui', 'aoû', 'sep', 'oct', 'nov', 'déc'],
]);
src/Carbon/Lang/fr_BF.php 0000644 00000000413 14753612052 0011112 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_BI.php 0000644 00000000413 14753612052 0011115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_BJ.php 0000644 00000000413 14753612052 0011116 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_BL.php 0000644 00000000413 14753612052 0011120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_CA.php 0000644 00000000773 14753612052 0011117 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Dieter Sting
* - François B
* - Maxime VALY
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/fr_CD.php 0000644 00000000413 14753612052 0011111 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_CF.php 0000644 00000000413 14753612052 0011113 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_CG.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_CH.php 0000644 00000000713 14753612052 0011120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Dieter Sting
* - François B
* - Gaspard Bucher
* - Maxime VALY
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
]);
src/Carbon/Lang/fr_CI.php 0000644 00000000413 14753612052 0011116 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_CM.php 0000644 00000000515 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'meridiem' => ['mat.', 'soir'],
]);
src/Carbon/Lang/fr_DJ.php 0000644 00000001050 14753612052 0011116 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'first_day_of_week' => 6,
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/fr_DZ.php 0000644 00000001101 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'first_day_of_week' => 6,
'weekend' => [5, 6],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/fr_FR.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_GA.php 0000644 00000000413 14753612052 0011112 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_GF.php 0000644 00000000413 14753612052 0011117 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_GN.php 0000644 00000000413 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_GP.php 0000644 00000000413 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_GQ.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_HT.php 0000644 00000000413 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_KM.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_LU.php 0000644 00000001010 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months_short' => ['jan', 'fév', 'mar', 'avr', 'mai', 'jun', 'jui', 'aoû', 'sep', 'oct', 'nov', 'déc'],
]);
src/Carbon/Lang/fr_MA.php 0000644 00000000540 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'first_day_of_week' => 6,
'weekend' => [5, 6],
]);
src/Carbon/Lang/fr_MC.php 0000644 00000000413 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_MF.php 0000644 00000000413 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_MG.php 0000644 00000000413 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_ML.php 0000644 00000000413 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_MQ.php 0000644 00000000413 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_MR.php 0000644 00000001012 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/fr_MU.php 0000644 00000000413 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_NC.php 0000644 00000000413 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_NE.php 0000644 00000000413 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_PF.php 0000644 00000000413 14753612052 0011130 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_PM.php 0000644 00000000413 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_RE.php 0000644 00000000413 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_RW.php 0000644 00000000413 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_SC.php 0000644 00000000413 14753612052 0011130 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_SN.php 0000644 00000000413 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_SY.php 0000644 00000001101 14753612052 0011151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'first_day_of_week' => 6,
'weekend' => [5, 6],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/fr_TD.php 0000644 00000001012 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/fr_TG.php 0000644 00000000413 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_TN.php 0000644 00000001043 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'weekend' => [5, 6],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/fr_VU.php 0000644 00000001012 14753612052 0011151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fr.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/fr_WF.php 0000644 00000000413 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fr_YT.php 0000644 00000000413 14753612052 0011157 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/fr.php';
src/Carbon/Lang/fur.php 0000644 00000000517 14753612052 0010735 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/fur_IT.php';
src/Carbon/Lang/fur_IT.php 0000644 00000002430 14753612052 0011325 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Pablo Saratxaga pablo@mandrakesoft.com
*/
return [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD. MM. YY',
'LL' => 'DD di MMMM dal YYYY',
'LLL' => 'DD di MMM HH:mm',
'LLLL' => 'DD di MMMM dal YYYY HH:mm',
],
'months' => ['zenâr', 'fevrâr', 'març', 'avrîl', 'mai', 'jugn', 'lui', 'avost', 'setembar', 'otubar', 'novembar', 'dicembar'],
'months_short' => ['zen', 'fev', 'mar', 'avr', 'mai', 'jug', 'lui', 'avo', 'set', 'otu', 'nov', 'dic'],
'weekdays' => ['domenie', 'lunis', 'martars', 'miercus', 'joibe', 'vinars', 'sabide'],
'weekdays_short' => ['dom', 'lun', 'mar', 'mie', 'joi', 'vin', 'sab'],
'weekdays_min' => ['dom', 'lun', 'mar', 'mie', 'joi', 'vin', 'sab'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count an',
'month' => ':count mês',
'week' => ':count setemane',
'day' => ':count zornade',
'hour' => ':count ore',
'minute' => ':count minût',
'second' => ':count secont',
];
src/Carbon/Lang/fy.php 0000644 00000005125 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Tim Fish
* - JD Isaacks
*/
return [
'year' => ':count jier|:count jierren',
'a_year' => 'ien jier|:count jierren',
'y' => ':count j',
'month' => ':count moanne|:count moannen',
'a_month' => 'ien moanne|:count moannen',
'm' => ':count moa.',
'week' => ':count wike|:count wiken',
'a_week' => 'in wike|:count wiken',
'a' => ':count w.',
'day' => ':count dei|:count dagen',
'a_day' => 'ien dei|:count dagen',
'd' => ':count d.',
'hour' => ':count oere|:count oeren',
'a_hour' => 'ien oere|:count oeren',
'h' => ':count o.',
'minute' => ':count minút|:count minuten',
'a_minute' => 'ien minút|:count minuten',
'min' => ':count min.',
'second' => ':count sekonde|:count sekonden',
'a_second' => 'in pear sekonden|:count sekonden',
's' => ':count s.',
'ago' => ':time lyn',
'from_now' => 'oer :time',
'diff_yesterday' => 'juster',
'diff_yesterday_regexp' => 'juster(?:\\s+om)?',
'diff_today' => 'hjoed',
'diff_today_regexp' => 'hjoed(?:\\s+om)?',
'diff_tomorrow' => 'moarn',
'diff_tomorrow_regexp' => 'moarn(?:\\s+om)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD-MM-YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[hjoed om] LT',
'nextDay' => '[moarn om] LT',
'nextWeek' => 'dddd [om] LT',
'lastDay' => '[juster om] LT',
'lastWeek' => '[ôfrûne] dddd [om] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
return $number.(($number === 1 || $number === 8 || $number >= 20) ? 'ste' : 'de');
},
'months' => ['jannewaris', 'febrewaris', 'maart', 'april', 'maaie', 'juny', 'july', 'augustus', 'septimber', 'oktober', 'novimber', 'desimber'],
'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
'mmm_suffix' => '.',
'weekdays' => ['snein', 'moandei', 'tiisdei', 'woansdei', 'tongersdei', 'freed', 'sneon'],
'weekdays_short' => ['si.', 'mo.', 'ti.', 'wo.', 'to.', 'fr.', 'so.'],
'weekdays_min' => ['Si', 'Mo', 'Ti', 'Wo', 'To', 'Fr', 'So'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' en '],
];
src/Carbon/Lang/fy_DE.php 0000644 00000002034 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandriva.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Jaunuwoa', 'Februwoa', 'Moaz', 'Aprell', 'Mai', 'Juni', 'Juli', 'August', 'Septamba', 'Oktoba', 'Nowamba', 'Dezamba'],
'months_short' => ['Jan', 'Feb', 'Moz', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Now', 'Dez'],
'weekdays' => ['Sinndag', 'Mondag', 'Dingsdag', 'Meddwäakj', 'Donnadag', 'Friedag', 'Sinnowend'],
'weekdays_short' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
'weekdays_min' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/fy_NL.php 0000644 00000001734 14753612052 0011152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Free Software Foundation, Inc. bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/fy.php', [
'formats' => [
'L' => 'DD-MM-YY',
],
'months' => ['Jannewaris', 'Febrewaris', 'Maart', 'April', 'Maaie', 'Juny', 'July', 'Augustus', 'Septimber', 'Oktober', 'Novimber', 'Desimber'],
'months_short' => ['Jan', 'Feb', 'Mrt', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['Snein', 'Moandei', 'Tiisdei', 'Woansdei', 'Tongersdei', 'Freed', 'Sneon'],
'weekdays_short' => ['Sn', 'Mo', 'Ti', 'Wo', 'To', 'Fr', 'Sn'],
'weekdays_min' => ['Sn', 'Mo', 'Ti', 'Wo', 'To', 'Fr', 'Sn'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/ga.php 0000644 00000005240 14753612052 0010526 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Thanks to André Silva : https://github.com/askpt
*/
return [
'year' => ':count bliain',
'a_year' => '{1}bliain|:count bliain',
'y' => ':countb',
'month' => ':count mí',
'a_month' => '{1}mí|:count mí',
'm' => ':countm',
'week' => ':count sheachtain',
'a_week' => '{1}sheachtain|:count sheachtain',
'w' => ':countsh',
'day' => ':count lá',
'a_day' => '{1}lá|:count lá',
'd' => ':countl',
'hour' => ':count uair an chloig',
'a_hour' => '{1}uair an chloig|:count uair an chloig',
'h' => ':countu',
'minute' => ':count nóiméad',
'a_minute' => '{1}nóiméad|:count nóiméad',
'min' => ':countn',
'second' => ':count soicind',
'a_second' => '{1}cúpla soicind|:count soicind',
's' => ':countso',
'ago' => ':time ó shin',
'from_now' => 'i :time',
'after' => ':time tar éis',
'before' => ':time roimh',
'diff_now' => 'anois',
'diff_today' => 'Inniu',
'diff_today_regexp' => 'Inniu(?:\\s+ag)?',
'diff_yesterday' => 'inné',
'diff_yesterday_regexp' => 'Inné(?:\\s+aig)?',
'diff_tomorrow' => 'amárach',
'diff_tomorrow_regexp' => 'Amárach(?:\\s+ag)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Inniu ag] LT',
'nextDay' => '[Amárach ag] LT',
'nextWeek' => 'dddd [ag] LT',
'lastDay' => '[Inné aig] LT',
'lastWeek' => 'dddd [seo caite] [ag] LT',
'sameElse' => 'L',
],
'months' => ['Eanáir', 'Feabhra', 'Márta', 'Aibreán', 'Bealtaine', 'Méitheamh', 'Iúil', 'Lúnasa', 'Meán Fómhair', 'Deaireadh Fómhair', 'Samhain', 'Nollaig'],
'months_short' => ['Eaná', 'Feab', 'Márt', 'Aibr', 'Beal', 'Méit', 'Iúil', 'Lúna', 'Meán', 'Deai', 'Samh', 'Noll'],
'weekdays' => ['Dé Domhnaigh', 'Dé Luain', 'Dé Máirt', 'Dé Céadaoin', 'Déardaoin', 'Dé hAoine', 'Dé Satharn'],
'weekdays_short' => ['Dom', 'Lua', 'Mái', 'Céa', 'Déa', 'hAo', 'Sat'],
'weekdays_min' => ['Do', 'Lu', 'Má', 'Ce', 'Dé', 'hA', 'Sa'],
'ordinal' => static fn ($number) => $number.($number === 1 ? 'd' : ($number % 10 === 2 ? 'na' : 'mh')),
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' agus '],
'meridiem' => ['r.n.', 'i.n.'],
];
src/Carbon/Lang/ga_IE.php 0000644 00000000413 14753612052 0011100 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ga.php';
src/Carbon/Lang/gd.php 0000644 00000005221 14753612052 0010530 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Jon Ashdown
*/
return [
'year' => ':count bliadhna',
'a_year' => '{1}bliadhna|:count bliadhna',
'y' => ':count b.',
'month' => ':count mìosan',
'a_month' => '{1}mìos|:count mìosan',
'm' => ':count ms.',
'week' => ':count seachdainean',
'a_week' => '{1}seachdain|:count seachdainean',
'w' => ':count s.',
'day' => ':count latha',
'a_day' => '{1}latha|:count latha',
'd' => ':count l.',
'hour' => ':count uairean',
'a_hour' => '{1}uair|:count uairean',
'h' => ':count u.',
'minute' => ':count mionaidean',
'a_minute' => '{1}mionaid|:count mionaidean',
'min' => ':count md.',
'second' => ':count diogan',
'a_second' => '{1}beagan diogan|:count diogan',
's' => ':count d.',
'ago' => 'bho chionn :time',
'from_now' => 'ann an :time',
'diff_yesterday' => 'An-dè',
'diff_yesterday_regexp' => 'An-dè(?:\\s+aig)?',
'diff_today' => 'An-diugh',
'diff_today_regexp' => 'An-diugh(?:\\s+aig)?',
'diff_tomorrow' => 'A-màireach',
'diff_tomorrow_regexp' => 'A-màireach(?:\\s+aig)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[An-diugh aig] LT',
'nextDay' => '[A-màireach aig] LT',
'nextWeek' => 'dddd [aig] LT',
'lastDay' => '[An-dè aig] LT',
'lastWeek' => 'dddd [seo chaidh] [aig] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
return $number.($number === 1 ? 'd' : ($number % 10 === 2 ? 'na' : 'mh'));
},
'months' => ['Am Faoilleach', 'An Gearran', 'Am Màrt', 'An Giblean', 'An Cèitean', 'An t-Ògmhios', 'An t-Iuchar', 'An Lùnastal', 'An t-Sultain', 'An Dàmhair', 'An t-Samhain', 'An Dùbhlachd'],
'months_short' => ['Faoi', 'Gear', 'Màrt', 'Gibl', 'Cèit', 'Ògmh', 'Iuch', 'Lùn', 'Sult', 'Dàmh', 'Samh', 'Dùbh'],
'weekdays' => ['Didòmhnaich', 'Diluain', 'Dimàirt', 'Diciadain', 'Diardaoin', 'Dihaoine', 'Disathairne'],
'weekdays_short' => ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'],
'weekdays_min' => ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' agus '],
'meridiem' => ['m', 'f'],
];
src/Carbon/Lang/gd_GB.php 0000644 00000000413 14753612052 0011076 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/gd.php';
src/Carbon/Lang/gez.php 0000644 00000000517 14753612052 0010726 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/gez_ER.php';
src/Carbon/Lang/gez_ER.php 0000644 00000004200 14753612052 0011305 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ጠሐረ', 'ከተተ', 'መገበ', 'አኀዘ', 'ግንባት', 'ሠንየ', 'ሐመለ', 'ነሐሰ', 'ከረመ', 'ጠቀመ', 'ኀደረ', 'ኀሠሠ'],
'months_short' => ['ጠሐረ', 'ከተተ', 'መገበ', 'አኀዘ', 'ግንባ', 'ሠንየ', 'ሐመለ', 'ነሐሰ', 'ከረመ', 'ጠቀመ', 'ኀደረ', 'ኀሠሠ'],
'weekdays' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚት'],
'weekdays_short' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
'weekdays_min' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ጽባሕ', 'ምሴት'],
'month' => ':count ወርሕ', // less reliable
'm' => ':count ወርሕ', // less reliable
'a_month' => ':count ወርሕ', // less reliable
'week' => ':count ሰብዑ', // less reliable
'w' => ':count ሰብዑ', // less reliable
'a_week' => ':count ሰብዑ', // less reliable
'hour' => ':count አንትሙ', // less reliable
'h' => ':count አንትሙ', // less reliable
'a_hour' => ':count አንትሙ', // less reliable
'minute' => ':count ንኡስ', // less reliable
'min' => ':count ንኡስ', // less reliable
'a_minute' => ':count ንኡስ', // less reliable
'year' => ':count ዓመት',
'y' => ':count ዓመት',
'a_year' => ':count ዓመት',
'day' => ':count ዕለት',
'd' => ':count ዕለት',
'a_day' => ':count ዕለት',
'second' => ':count ካልእ',
's' => ':count ካልእ',
'a_second' => ':count ካልእ',
]);
src/Carbon/Lang/gez_ET.php 0000644 00000002372 14753612052 0011317 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕረል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክተውበር', 'ኖቬምበር', 'ዲሴምበር'],
'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
'weekdays' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚት'],
'weekdays_short' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
'weekdays_min' => ['እኁድ', 'ሰኑይ', 'ሠሉስ', 'ራብዕ', 'ሐሙስ', 'ዓርበ', 'ቀዳሚ'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ጽባሕ', 'ምሴት'],
]);
src/Carbon/Lang/gl.php 0000644 00000006555 14753612052 0010553 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Fidel Pita
* - JD Isaacks
* - Diego Vilariño
* - Sebastian Thierer
*/
use Carbon\CarbonInterface;
return [
'year' => ':count ano|:count anos',
'a_year' => 'un ano|:count anos',
'y' => ':count a.',
'month' => ':count mes|:count meses',
'a_month' => 'un mes|:count meses',
'm' => ':count mes.',
'week' => ':count semana|:count semanas',
'a_week' => 'unha semana|:count semanas',
'w' => ':count sem.',
'day' => ':count día|:count días',
'a_day' => 'un día|:count días',
'd' => ':count d.',
'hour' => ':count hora|:count horas',
'a_hour' => 'unha hora|:count horas',
'h' => ':count h.',
'minute' => ':count minuto|:count minutos',
'a_minute' => 'un minuto|:count minutos',
'min' => ':count min.',
'second' => ':count segundo|:count segundos',
'a_second' => 'uns segundos|:count segundos',
's' => ':count seg.',
'ago' => 'hai :time',
'from_now' => static function ($time) {
if (str_starts_with($time, 'un')) {
return "n$time";
}
return "en $time";
},
'diff_now' => 'agora',
'diff_today' => 'hoxe',
'diff_today_regexp' => 'hoxe(?:\\s+ás)?',
'diff_yesterday' => 'onte',
'diff_yesterday_regexp' => 'onte(?:\\s+á)?',
'diff_tomorrow' => 'mañá',
'diff_tomorrow_regexp' => 'mañá(?:\\s+ás)?',
'after' => ':time despois',
'before' => ':time antes',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D [de] MMMM [de] YYYY',
'LLL' => 'D [de] MMMM [de] YYYY H:mm',
'LLLL' => 'dddd, D [de] MMMM [de] YYYY H:mm',
],
'calendar' => [
'sameDay' => static function (CarbonInterface $current) {
return '[hoxe '.($current->hour !== 1 ? 'ás' : 'á').'] LT';
},
'nextDay' => static function (CarbonInterface $current) {
return '[mañá '.($current->hour !== 1 ? 'ás' : 'á').'] LT';
},
'nextWeek' => static function (CarbonInterface $current) {
return 'dddd ['.($current->hour !== 1 ? 'ás' : 'á').'] LT';
},
'lastDay' => static function (CarbonInterface $current) {
return '[onte '.($current->hour !== 1 ? 'á' : 'a').'] LT';
},
'lastWeek' => static function (CarbonInterface $current) {
return '[o] dddd [pasado '.($current->hour !== 1 ? 'ás' : 'á').'] LT';
},
'sameElse' => 'L',
],
'ordinal' => ':numberº',
'months' => ['xaneiro', 'febreiro', 'marzo', 'abril', 'maio', 'xuño', 'xullo', 'agosto', 'setembro', 'outubro', 'novembro', 'decembro'],
'months_short' => ['xan.', 'feb.', 'mar.', 'abr.', 'mai.', 'xuñ.', 'xul.', 'ago.', 'set.', 'out.', 'nov.', 'dec.'],
'weekdays' => ['domingo', 'luns', 'martes', 'mércores', 'xoves', 'venres', 'sábado'],
'weekdays_short' => ['dom.', 'lun.', 'mar.', 'mér.', 'xov.', 'ven.', 'sáb.'],
'weekdays_min' => ['do', 'lu', 'ma', 'mé', 'xo', 've', 'sá'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' e '],
'meridiem' => ['a.m.', 'p.m.'],
];
src/Carbon/Lang/gl_ES.php 0000644 00000000413 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/gl.php';
src/Carbon/Lang/gom.php 0000644 00000000521 14753612052 0010716 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/gom_Latn.php';
src/Carbon/Lang/gom_Latn.php 0000644 00000004511 14753612052 0011677 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return [
'year' => ':count voros|:count vorsam',
'y' => ':countv',
'month' => ':count mhoino|:count mhoine',
'm' => ':countmh',
'week' => ':count satolleacho|:count satolleache',
'w' => ':countsa|:countsa',
'day' => ':count dis',
'd' => ':countd',
'hour' => ':count hor|:count horam',
'h' => ':counth',
'minute' => ':count minute|:count mintam',
'min' => ':countm',
'second' => ':count second',
's' => ':counts',
'diff_today' => 'Aiz',
'diff_yesterday' => 'Kal',
'diff_tomorrow' => 'Faleam',
'formats' => [
'LT' => 'A h:mm [vazta]',
'LTS' => 'A h:mm:ss [vazta]',
'L' => 'DD-MM-YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY A h:mm [vazta]',
'LLLL' => 'dddd, MMMM[achea] Do, YYYY, A h:mm [vazta]',
'llll' => 'ddd, D MMM YYYY, A h:mm [vazta]',
],
'calendar' => [
'sameDay' => '[Aiz] LT',
'nextDay' => '[Faleam] LT',
'nextWeek' => '[Ieta to] dddd[,] LT',
'lastDay' => '[Kal] LT',
'lastWeek' => '[Fatlo] dddd[,] LT',
'sameElse' => 'L',
],
'months' => ['Janer', 'Febrer', 'Mars', 'Abril', 'Mai', 'Jun', 'Julai', 'Agost', 'Setembr', 'Otubr', 'Novembr', 'Dezembr'],
'months_short' => ['Jan.', 'Feb.', 'Mars', 'Abr.', 'Mai', 'Jun', 'Jul.', 'Ago.', 'Set.', 'Otu.', 'Nov.', 'Dez.'],
'weekdays' => ['Aitar', 'Somar', 'Mongllar', 'Budvar', 'Brestar', 'Sukrar', 'Son\'var'],
'weekdays_short' => ['Ait.', 'Som.', 'Mon.', 'Bud.', 'Bre.', 'Suk.', 'Son.'],
'weekdays_min' => ['Ai', 'Sm', 'Mo', 'Bu', 'Br', 'Su', 'Sn'],
'ordinal' => static fn ($number, $period) => $number.($period === 'D' ? 'er' : ''),
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'rati';
}
if ($hour < 12) {
return 'sokalli';
}
if ($hour < 16) {
return 'donparam';
}
if ($hour < 20) {
return 'sanje';
}
return 'rati';
},
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' ani '],
];
src/Carbon/Lang/gsw.php 0000644 00000003013 14753612052 0010733 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Christopher Dell
* - Akira Matsuda
* - Enrique Vidal
* - Simone Carletti
* - Henning Kiel
* - Aaron Patterson
* - Florian Hanke
*/
return [
'year' => ':count Johr',
'month' => ':count Monet',
'week' => ':count Woche',
'day' => ':count Tag',
'hour' => ':count Schtund',
'minute' => ':count Minute',
'second' => ':count Sekunde',
'weekdays' => ['Sunntig', 'Mäntig', 'Ziischtig', 'Mittwuch', 'Dunschtig', 'Friitig', 'Samschtig'],
'weekdays_short' => ['Su', 'Mä', 'Zi', 'Mi', 'Du', 'Fr', 'Sa'],
'weekdays_min' => ['Su', 'Mä', 'Zi', 'Mi', 'Du', 'Fr', 'Sa'],
'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'Auguscht', 'September', 'Oktober', 'November', 'Dezember'],
'months_short' => ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
'meridiem' => ['am Vormittag', 'am Namittag'],
'ordinal' => ':number.',
'list' => [', ', ' und '],
'diff_now' => 'now',
'diff_yesterday' => 'geschter',
'diff_tomorrow' => 'moorn',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'Do MMMM YYYY',
'LLL' => 'Do MMMM, HH:mm [Uhr]',
'LLLL' => 'dddd, Do MMMM YYYY, HH:mm [Uhr]',
],
];
src/Carbon/Lang/gsw_CH.php 0000644 00000000414 14753612052 0011307 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/gsw.php';
src/Carbon/Lang/gsw_FR.php 0000644 00000001154 14753612052 0011326 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/gsw.php', [
'meridiem' => ['vorm.', 'nam.'],
'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'Auguscht', 'Septämber', 'Oktoober', 'Novämber', 'Dezämber'],
'first_day_of_week' => 1,
'formats' => [
'LLL' => 'Do MMMM YYYY HH:mm',
'LLLL' => 'dddd, Do MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/gsw_LI.php 0000644 00000001154 14753612052 0011323 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/gsw.php', [
'meridiem' => ['vorm.', 'nam.'],
'months' => ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'Auguscht', 'Septämber', 'Oktoober', 'Novämber', 'Dezämber'],
'first_day_of_week' => 1,
'formats' => [
'LLL' => 'Do MMMM YYYY HH:mm',
'LLLL' => 'dddd, Do MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/gu.php 0000644 00000006456 14753612052 0010564 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - Kaushik Thanki
* - Josh Soref
*/
return [
'year' => 'એક વર્ષ|:count વર્ષ',
'y' => ':countવર્ષ|:countવર્ષો',
'month' => 'એક મહિનો|:count મહિના',
'm' => ':countમહિનો|:countમહિના',
'week' => ':count અઠવાડિયું|:count અઠવાડિયા',
'w' => ':countઅઠ.|:countઅઠ.',
'day' => 'એક દિવસ|:count દિવસ',
'd' => ':countદિ.|:countદિ.',
'hour' => 'એક કલાક|:count કલાક',
'h' => ':countક.|:countક.',
'minute' => 'એક મિનિટ|:count મિનિટ',
'min' => ':countમિ.|:countમિ.',
'second' => 'અમુક પળો|:count સેકંડ',
's' => ':countસે.|:countસે.',
'ago' => ':time પેહલા',
'from_now' => ':time મા',
'after' => ':time પછી',
'before' => ':time પહેલા',
'diff_now' => 'હમણાં',
'diff_today' => 'આજ',
'diff_yesterday' => 'ગઇકાલે',
'diff_tomorrow' => 'કાલે',
'formats' => [
'LT' => 'A h:mm વાગ્યે',
'LTS' => 'A h:mm:ss વાગ્યે',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm વાગ્યે',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm વાગ્યે',
],
'calendar' => [
'sameDay' => '[આજ] LT',
'nextDay' => '[કાલે] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[ગઇકાલે] LT',
'lastWeek' => '[પાછલા] dddd, LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'રાત';
}
if ($hour < 10) {
return 'સવાર';
}
if ($hour < 17) {
return 'બપોર';
}
if ($hour < 20) {
return 'સાંજ';
}
return 'રાત';
},
'months' => ['જાન્યુઆરી', 'ફેબ્રુઆરી', 'માર્ચ', 'એપ્રિલ', 'મે', 'જૂન', 'જુલાઈ', 'ઑગસ્ટ', 'સપ્ટેમ્બર', 'ઑક્ટ્બર', 'નવેમ્બર', 'ડિસેમ્બર'],
'months_short' => ['જાન્યુ.', 'ફેબ્રુ.', 'માર્ચ', 'એપ્રિ.', 'મે', 'જૂન', 'જુલા.', 'ઑગ.', 'સપ્ટે.', 'ઑક્ટ્.', 'નવે.', 'ડિસે.'],
'weekdays' => ['રવિવાર', 'સોમવાર', 'મંગળવાર', 'બુધ્વાર', 'ગુરુવાર', 'શુક્રવાર', 'શનિવાર'],
'weekdays_short' => ['રવિ', 'સોમ', 'મંગળ', 'બુધ્', 'ગુરુ', 'શુક્ર', 'શનિ'],
'weekdays_min' => ['ર', 'સો', 'મં', 'બુ', 'ગુ', 'શુ', 'શ'],
'list' => [', ', ' અને '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'weekend' => [0, 0],
];
src/Carbon/Lang/gu_IN.php 0000644 00000000413 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/gu.php';
src/Carbon/Lang/guz.php 0000644 00000003300 14753612052 0010737 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['Ma', 'Mo'],
'weekdays' => ['Chumapiri', 'Chumatato', 'Chumaine', 'Chumatano', 'Aramisi', 'Ichuma', 'Esabato'],
'weekdays_short' => ['Cpr', 'Ctt', 'Cmn', 'Cmt', 'Ars', 'Icm', 'Est'],
'weekdays_min' => ['Cpr', 'Ctt', 'Cmn', 'Cmt', 'Ars', 'Icm', 'Est'],
'months' => ['Chanuari', 'Feburari', 'Machi', 'Apiriri', 'Mei', 'Juni', 'Chulai', 'Agosti', 'Septemba', 'Okitoba', 'Nobemba', 'Disemba'],
'months_short' => ['Can', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Cul', 'Agt', 'Sep', 'Okt', 'Nob', 'Dis'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'month' => ':count omotunyi', // less reliable
'm' => ':count omotunyi', // less reliable
'a_month' => ':count omotunyi', // less reliable
'week' => ':count isano naibere', // less reliable
'w' => ':count isano naibere', // less reliable
'a_week' => ':count isano naibere', // less reliable
'second' => ':count ibere', // less reliable
's' => ':count ibere', // less reliable
'a_second' => ':count ibere', // less reliable
'year' => ':count omwaka',
'y' => ':count omwaka',
'a_year' => ':count omwaka',
'day' => ':count rituko',
'd' => ':count rituko',
'a_day' => ':count rituko',
]);
src/Carbon/Lang/gv.php 0000644 00000000516 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/gv_GB.php';
src/Carbon/Lang/gv_GB.php 0000644 00000003316 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Alastair McKinstry bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Jerrey-geuree', 'Toshiaght-arree', 'Mayrnt', 'Averil', 'Boaldyn', 'Mean-souree', 'Jerrey-souree', 'Luanistyn', 'Mean-fouyir', 'Jerrey-fouyir', 'Mee Houney', 'Mee ny Nollick'],
'months_short' => ['J-guer', 'T-arree', 'Mayrnt', 'Avrril', 'Boaldyn', 'M-souree', 'J-souree', 'Luanistyn', 'M-fouyir', 'J-fouyir', 'M.Houney', 'M.Nollick'],
'weekdays' => ['Jedoonee', 'Jelhein', 'Jemayrt', 'Jercean', 'Jerdein', 'Jeheiney', 'Jesarn'],
'weekdays_short' => ['Jed', 'Jel', 'Jem', 'Jerc', 'Jerd', 'Jeh', 'Jes'],
'weekdays_min' => ['Jed', 'Jel', 'Jem', 'Jerc', 'Jerd', 'Jeh', 'Jes'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count blein',
'y' => ':count blein',
'a_year' => ':count blein',
'month' => ':count mee',
'm' => ':count mee',
'a_month' => ':count mee',
'week' => ':count shiaghtin',
'w' => ':count shiaghtin',
'a_week' => ':count shiaghtin',
'day' => ':count laa',
'd' => ':count laa',
'a_day' => ':count laa',
'hour' => ':count oor',
'h' => ':count oor',
'a_hour' => ':count oor',
'minute' => ':count feer veg',
'min' => ':count feer veg',
'a_minute' => ':count feer veg',
'second' => ':count derrey',
's' => ':count derrey',
'a_second' => ':count derrey',
]);
src/Carbon/Lang/ha.php 0000644 00000003357 14753612052 0010536 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - pablo@mandriva.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM, YYYY HH:mm',
'LLLL' => 'dddd, D MMMM, YYYY HH:mm',
],
'months' => ['Janairu', 'Faburairu', 'Maris', 'Afirilu', 'Mayu', 'Yuni', 'Yuli', 'Agusta', 'Satumba', 'Oktoba', 'Nuwamba', 'Disamba'],
'months_short' => ['Jan', 'Fab', 'Mar', 'Afi', 'May', 'Yun', 'Yul', 'Agu', 'Sat', 'Okt', 'Nuw', 'Dis'],
'weekdays' => ['Lahadi', 'Litini', 'Talata', 'Laraba', 'Alhamis', 'Jumaʼa', 'Asabar'],
'weekdays_short' => ['Lah', 'Lit', 'Tal', 'Lar', 'Alh', 'Jum', 'Asa'],
'weekdays_min' => ['Lh', 'Li', 'Ta', 'Lr', 'Al', 'Ju', 'As'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => 'shekara :count',
'y' => 'shekara :count',
'a_year' => 'shekara :count',
'month' => ':count wátàa',
'm' => ':count wátàa',
'a_month' => ':count wátàa',
'week' => ':count mako',
'w' => ':count mako',
'a_week' => ':count mako',
'day' => ':count rana',
'd' => ':count rana',
'a_day' => ':count rana',
'hour' => ':count áwàa',
'h' => ':count áwàa',
'a_hour' => ':count áwàa',
'minute' => 'minti :count',
'min' => 'minti :count',
'a_minute' => 'minti :count',
'second' => ':count ná bíyú',
's' => ':count ná bíyú',
'a_second' => ':count ná bíyú',
]);
src/Carbon/Lang/ha_GH.php 0000644 00000000413 14753612052 0011102 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ha.php';
src/Carbon/Lang/ha_NE.php 0000644 00000000413 14753612052 0011106 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ha.php';
src/Carbon/Lang/ha_NG.php 0000644 00000000413 14753612052 0011110 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ha.php';
src/Carbon/Lang/hak.php 0000644 00000000517 14753612052 0010704 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/hak_TW.php';
src/Carbon/Lang/hak_TW.php 0000644 00000003253 14753612052 0011316 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY年MM月DD日',
],
'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'months_short' => [' 1月', ' 2月', ' 3月', ' 4月', ' 5月', ' 6月', ' 7月', ' 8月', ' 9月', '10月', '11月', '12月'],
'weekdays' => ['禮拜日', '禮拜一', '禮拜二', '禮拜三', '禮拜四', '禮拜五', '禮拜六'],
'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['上晝', '下晝'],
'year' => ':count ngien11',
'y' => ':count ngien11',
'a_year' => ':count ngien11',
'month' => ':count ngie̍t',
'm' => ':count ngie̍t',
'a_month' => ':count ngie̍t',
'week' => ':count lî-pai',
'w' => ':count lî-pai',
'a_week' => ':count lî-pai',
'day' => ':count ngit',
'd' => ':count ngit',
'a_day' => ':count ngit',
'hour' => ':count sṳ̀',
'h' => ':count sṳ̀',
'a_hour' => ':count sṳ̀',
'minute' => ':count fûn',
'min' => ':count fûn',
'a_minute' => ':count fûn',
'second' => ':count miéu',
's' => ':count miéu',
'a_second' => ':count miéu',
]);
src/Carbon/Lang/haw.php 0000644 00000003237 14753612052 0010722 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'months' => ['Ianuali', 'Pepeluali', 'Malaki', 'ʻApelila', 'Mei', 'Iune', 'Iulai', 'ʻAukake', 'Kepakemapa', 'ʻOkakopa', 'Nowemapa', 'Kekemapa'],
'months_short' => ['Ian.', 'Pep.', 'Mal.', 'ʻAp.', 'Mei', 'Iun.', 'Iul.', 'ʻAu.', 'Kep.', 'ʻOk.', 'Now.', 'Kek.'],
'weekdays' => ['Lāpule', 'Poʻakahi', 'Poʻalua', 'Poʻakolu', 'Poʻahā', 'Poʻalima', 'Poʻaono'],
'weekdays_short' => ['LP', 'P1', 'P2', 'P3', 'P4', 'P5', 'P6'],
'weekdays_min' => ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd, D MMMM YYYY h:mm a',
],
'year' => ':count makahiki',
'y' => ':count makahiki',
'a_year' => ':count makahiki',
'month' => ':count mahina',
'm' => ':count mahina',
'a_month' => ':count mahina',
'week' => ':count pule',
'w' => ':count pule',
'a_week' => ':count pule',
'day' => ':count lā',
'd' => ':count lā',
'a_day' => ':count lā',
'hour' => ':count hola',
'h' => ':count hola',
'a_hour' => ':count hola',
'minute' => ':count minuke',
'min' => ':count minuke',
'a_minute' => ':count minuke',
'second' => ':count lua',
's' => ':count lua',
'a_second' => ':count lua',
]);
src/Carbon/Lang/he.php 0000644 00000006147 14753612052 0010542 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Daniel Cohen Gindi
* - JD Isaacks
* - Itai Nathaniel
* - GabMic
* - Yaakov Dahan (yakidahan)
*/
return [
'year' => 'שנה|{2}שנתיים|:count שנים',
'y' => 'שנה|:count שנ׳',
'month' => 'חודש|{2}חודשיים|:count חודשים',
'm' => 'חודש|:count חו׳',
'week' => 'שבוע|{2}שבועיים|:count שבועות',
'w' => 'שבוע|:count שב׳',
'day' => 'יום|{2}יומיים|:count ימים',
'd' => 'יום|:count ימ׳',
'hour' => 'שעה|{2}שעתיים|:count שעות',
'h' => 'שעה|:count שע׳',
'minute' => 'דקה|{2}שתי דקות|:count דקות',
'min' => 'דקה|:count דק׳',
'second' => 'שנייה|:count שניות',
'a_second' => 'כמה שניות|:count שניות',
's' => 'שניה|:count שנ׳',
'ago' => 'לפני :time',
'from_now' => 'בעוד :time מעכשיו',
'after' => 'אחרי :time',
'before' => 'לפני :time',
'diff_now' => 'עכשיו',
'diff_today' => 'היום',
'diff_today_regexp' => 'היום(?:\\s+ב־)?',
'diff_yesterday' => 'אתמול',
'diff_yesterday_regexp' => 'אתמול(?:\\s+ב־)?',
'diff_tomorrow' => 'מחר',
'diff_tomorrow_regexp' => 'מחר(?:\\s+ב־)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D [ב]MMMM YYYY',
'LLL' => 'D [ב]MMMM YYYY HH:mm',
'LLLL' => 'dddd, D [ב]MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[היום ב־]LT',
'nextDay' => '[מחר ב־]LT',
'nextWeek' => 'dddd [בשעה] LT',
'lastDay' => '[אתמול ב־]LT',
'lastWeek' => '[ביום] dddd [האחרון בשעה] LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour, $minute, $isLower) {
if ($hour < 5) {
return 'לפנות בוקר';
}
if ($hour < 10) {
return 'בבוקר';
}
if ($hour < 12) {
return $isLower ? 'לפנה"צ' : 'לפני הצהריים';
}
if ($hour < 18) {
return $isLower ? 'אחה"צ' : 'אחרי הצהריים';
}
return 'בערב';
},
'months' => ['ינואר', 'פברואר', 'מרץ', 'אפריל', 'מאי', 'יוני', 'יולי', 'אוגוסט', 'ספטמבר', 'אוקטובר', 'נובמבר', 'דצמבר'],
'months_short' => ['ינו׳', 'פבר׳', 'מרץ', 'אפר׳', 'מאי', 'יוני', 'יולי', 'אוג׳', 'ספט׳', 'אוק׳', 'נוב׳', 'דצמ׳'],
'weekdays' => ['ראשון', 'שני', 'שלישי', 'רביעי', 'חמישי', 'שישי', 'שבת'],
'weekdays_short' => ['א׳', 'ב׳', 'ג׳', 'ד׳', 'ה׳', 'ו׳', 'ש׳'],
'weekdays_min' => ['א', 'ב', 'ג', 'ד', 'ה', 'ו', 'ש'],
'list' => [', ', ' ו -'],
'weekend' => [5, 6],
];
src/Carbon/Lang/he_IL.php 0000644 00000000413 14753612052 0011114 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/he.php';
src/Carbon/Lang/hi.php 0000644 00000006267 14753612052 0010551 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - abhimanyu003
* - Josh Soref
* - JD Isaacks
*/
return [
'year' => 'एक वर्ष|:count वर्ष',
'y' => '1 वर्ष|:count वर्षों',
'month' => 'एक महीने|:count महीने',
'm' => '1 माह|:count महीने',
'week' => '1 सप्ताह|:count सप्ताह',
'w' => '1 सप्ताह|:count सप्ताह',
'day' => 'एक दिन|:count दिन',
'd' => '1 दिन|:count दिनों',
'hour' => 'एक घंटा|:count घंटे',
'h' => '1 घंटा|:count घंटे',
'minute' => 'एक मिनट|:count मिनट',
'min' => '1 मिनट|:count मिनटों',
'second' => 'कुछ ही क्षण|:count सेकंड',
's' => '1 सेकंड|:count सेकंड',
'ago' => ':time पहले',
'from_now' => ':time में',
'after' => ':time के बाद',
'before' => ':time के पहले',
'diff_now' => 'अब',
'diff_today' => 'आज',
'diff_yesterday' => 'कल',
'diff_tomorrow' => 'कल',
'formats' => [
'LT' => 'A h:mm बजे',
'LTS' => 'A h:mm:ss बजे',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm बजे',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm बजे',
],
'calendar' => [
'sameDay' => '[आज] LT',
'nextDay' => '[कल] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[कल] LT',
'lastWeek' => '[पिछले] dddd, LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'रात';
}
if ($hour < 10) {
return 'सुबह';
}
if ($hour < 17) {
return 'दोपहर';
}
if ($hour < 20) {
return 'शाम';
}
return 'रात';
},
'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'months_short' => ['जन.', 'फ़र.', 'मार्च', 'अप्रै.', 'मई', 'जून', 'जुल.', 'अग.', 'सित.', 'अक्टू.', 'नव.', 'दिस.'],
'weekdays' => ['रविवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'गुरूवार', 'शुक्रवार', 'शनिवार'],
'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'गुरू', 'शुक्र', 'शनि'],
'weekdays_min' => ['र', 'सो', 'मं', 'बु', 'गु', 'शु', 'श'],
'list' => [', ', ' और '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'weekend' => [0, 0],
];
src/Carbon/Lang/hi_IN.php 0000644 00000000413 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/hi.php';
src/Carbon/Lang/hif.php 0000644 00000000517 14753612052 0010707 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/hif_FJ.php';
src/Carbon/Lang/hif_FJ.php 0000644 00000003270 14753612052 0011265 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Samsung Electronics Co., Ltd. akhilesh.k@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'formats' => [
'L' => 'dddd DD MMM YYYY',
],
'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
'weekdays' => ['Ravivar', 'Somvar', 'Mangalvar', 'Budhvar', 'Guruvar', 'Shukravar', 'Shanivar'],
'weekdays_short' => ['Ravi', 'Som', 'Mangal', 'Budh', 'Guru', 'Shukra', 'Shani'],
'weekdays_min' => ['Ravi', 'Som', 'Mangal', 'Budh', 'Guru', 'Shukra', 'Shani'],
'meridiem' => ['Purvahan', 'Aparaahna'],
'hour' => ':count minit', // less reliable
'h' => ':count minit', // less reliable
'a_hour' => ':count minit', // less reliable
'year' => ':count saal',
'y' => ':count saal',
'a_year' => ':count saal',
'month' => ':count Mahina',
'm' => ':count Mahina',
'a_month' => ':count Mahina',
'week' => ':count Hafta',
'w' => ':count Hafta',
'a_week' => ':count Hafta',
'day' => ':count Din',
'd' => ':count Din',
'a_day' => ':count Din',
'minute' => ':count Minit',
'min' => ':count Minit',
'a_minute' => ':count Minit',
'second' => ':count Second',
's' => ':count Second',
'a_second' => ':count Second',
]);
src/Carbon/Lang/hne.php 0000644 00000000517 14753612052 0010713 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/hne_IN.php';
src/Carbon/Lang/hne_IN.php 0000644 00000002543 14753612052 0011302 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat, Pune bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अपरेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितमबर', 'अकटूबर', 'नवमबर', 'दिसमबर'],
'months_short' => ['जन', 'फर', 'मार्च', 'अप', 'मई', 'जून', 'जुला', 'अग', 'सित', 'अकटू', 'नव', 'दिस'],
'weekdays' => ['इतवार', 'सोमवार', 'मंगलवार', 'बुधवार', 'बिरसपत', 'सुकरवार', 'सनिवार'],
'weekdays_short' => ['इत', 'सोम', 'मंग', 'बुध', 'बिर', 'सुक', 'सनि'],
'weekdays_min' => ['इत', 'सोम', 'मंग', 'बुध', 'बिर', 'सुक', 'सनि'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['बिहिनियाँ', 'मंझनियाँ'],
]);
src/Carbon/Lang/hr.php 0000644 00000007246 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - Tim Fish
* - shaishavgandhi05
* - Serhan Apaydın
* - JD Isaacks
* - tomhorvat
* - Josh Soref
* - François B
* - shaishavgandhi05
* - Serhan Apaydın
* - JD Isaacks
* - tomhorvat
* - Stjepan Majdak
* - Vanja Retkovac (vr00)
*/
use Carbon\CarbonInterface;
return [
'year' => ':count godinu|:count godine|:count godina',
'y' => ':count god.|:count god.|:count god.',
'month' => ':count mjesec|:count mjeseca|:count mjeseci',
'm' => ':count mj.|:count mj.|:count mj.',
'week' => ':count tjedan|:count tjedna|:count tjedana',
'w' => ':count tj.|:count tj.|:count tj.',
'day' => ':count dan|:count dana|:count dana',
'd' => ':count d.|:count d.|:count d.',
'hour' => ':count sat|:count sata|:count sati',
'h' => ':count sat|:count sata|:count sati',
'minute' => ':count minutu|:count minute|:count minuta',
'min' => ':count min.|:count min.|:count min.',
'second' => ':count sekundu|:count sekunde|:count sekundi',
'a_second' => 'nekoliko sekundi|:count sekunde|:count sekundi',
's' => ':count sek.|:count sek.|:count sek.',
'ago' => 'prije :time',
'from_now' => 'za :time',
'after' => ':time poslije',
'before' => ':time prije',
'diff_now' => 'sad',
'diff_today' => 'danas',
'diff_today_regexp' => 'danas(?:\\s+u)?',
'diff_yesterday' => 'jučer',
'diff_yesterday_regexp' => 'jučer(?:\\s+u)?',
'diff_tomorrow' => 'sutra',
'diff_tomorrow_regexp' => 'sutra(?:\\s+u)?',
'diff_before_yesterday' => 'prekjučer',
'diff_after_tomorrow' => 'prekosutra',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'D. M. YYYY.',
'LL' => 'D. MMMM YYYY.',
'LLL' => 'D. MMMM YYYY. H:mm',
'LLLL' => 'dddd, D. MMMM YYYY. H:mm',
],
'calendar' => [
'sameDay' => '[danas u] LT',
'nextDay' => '[sutra u] LT',
'nextWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[u] [nedjelju] [u] LT',
3 => '[u] [srijedu] [u] LT',
6 => '[u] [subotu] [u] LT',
default => '[u] dddd [u] LT',
},
'lastDay' => '[jučer u] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0, 3 => '[prošlu] dddd [u] LT',
6 => '[prošle] [subote] [u] LT',
default => '[prošli] dddd [u] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['siječnja', 'veljače', 'ožujka', 'travnja', 'svibnja', 'lipnja', 'srpnja', 'kolovoza', 'rujna', 'listopada', 'studenoga', 'prosinca'],
'months_standalone' => ['siječanj', 'veljača', 'ožujak', 'travanj', 'svibanj', 'lipanj', 'srpanj', 'kolovoz', 'rujan', 'listopad', 'studeni', 'prosinac'],
'months_short' => ['sij.', 'velj.', 'ožu.', 'tra.', 'svi.', 'lip.', 'srp.', 'kol.', 'ruj.', 'lis.', 'stu.', 'pro.'],
'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => ['nedjelju', 'ponedjeljak', 'utorak', 'srijedu', 'četvrtak', 'petak', 'subotu'],
'weekdays_standalone' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
'weekdays_min' => ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' i '],
];
src/Carbon/Lang/hr_BA.php 0000644 00000002364 14753612052 0011116 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - DarkoDevelop
*/
return array_replace_recursive(require __DIR__.'/hr.php', [
'weekdays' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
'weekdays_short' => ['ned', 'pon', 'uto', 'sri', 'čet', 'pet', 'sub'],
'weekdays_min' => ['ned', 'pon', 'uto', 'sri', 'čet', 'pet', 'sub'],
'months' => ['siječnja', 'veljače', 'ožujka', 'travnja', 'svibnja', 'lipnja', 'srpnja', 'kolovoza', 'rujna', 'listopada', 'studenoga', 'prosinca'],
'months_short' => ['sij', 'velj', 'ožu', 'tra', 'svi', 'lip', 'srp', 'kol', 'ruj', 'lis', 'stu', 'pro'],
'months_standalone' => ['siječanj', 'veljača', 'ožujak', 'travanj', 'svibanj', 'lipanj', 'srpanj', 'kolovoz', 'rujan', 'listopad', 'studeni', 'prosinac'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D. M. yy.',
'LL' => 'D. MMM YYYY.',
'LLL' => 'D. MMMM YYYY. HH:mm',
'LLLL' => 'dddd, D. MMMM YYYY. HH:mm',
],
]);
src/Carbon/Lang/hr_HR.php 0000644 00000000413 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/hr.php';
src/Carbon/Lang/hsb.php 0000644 00000000517 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/hsb_DE.php';
src/Carbon/Lang/hsb_DE.php 0000644 00000003513 14753612052 0011264 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Information from Michael Wolf Andrzej Krzysztofowicz ankry@mif.pg.gda.pl
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'DD. MMMM YYYY',
'LLL' => 'DD. MMMM, HH:mm [hodź.]',
'LLLL' => 'dddd, DD. MMMM YYYY, HH:mm [hodź.]',
],
'months' => ['januara', 'februara', 'měrca', 'apryla', 'meje', 'junija', 'julija', 'awgusta', 'septembra', 'oktobra', 'nowembra', 'decembra'],
'months_short' => ['Jan', 'Feb', 'Měr', 'Apr', 'Mej', 'Jun', 'Jul', 'Awg', 'Sep', 'Okt', 'Now', 'Dec'],
'weekdays' => ['Njedźela', 'Póndźela', 'Wutora', 'Srjeda', 'Štvórtk', 'Pjatk', 'Sobota'],
'weekdays_short' => ['Nj', 'Pó', 'Wu', 'Sr', 'Št', 'Pj', 'So'],
'weekdays_min' => ['Nj', 'Pó', 'Wu', 'Sr', 'Št', 'Pj', 'So'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count lěto',
'y' => ':count lěto',
'a_year' => ':count lěto',
'month' => ':count měsac',
'm' => ':count měsac',
'a_month' => ':count měsac',
'week' => ':count tydźeń',
'w' => ':count tydźeń',
'a_week' => ':count tydźeń',
'day' => ':count dźeń',
'd' => ':count dźeń',
'a_day' => ':count dźeń',
'hour' => ':count hodźina',
'h' => ':count hodźina',
'a_hour' => ':count hodźina',
'minute' => ':count chwila',
'min' => ':count chwila',
'a_minute' => ':count chwila',
'second' => ':count druhi',
's' => ':count druhi',
'a_second' => ':count druhi',
]);
src/Carbon/Lang/ht.php 0000644 00000000516 14753612052 0010553 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ht_HT.php';
src/Carbon/Lang/ht_HT.php 0000644 00000003077 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Sugar Labs // OLPC sugarlabs.org libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['janvye', 'fevriye', 'mas', 'avril', 'me', 'jen', 'jiyè', 'out', 'septanm', 'oktòb', 'novanm', 'desanm'],
'months_short' => ['jan', 'fev', 'mas', 'avr', 'me', 'jen', 'jiy', 'out', 'sep', 'okt', 'nov', 'des'],
'weekdays' => ['dimanch', 'lendi', 'madi', 'mèkredi', 'jedi', 'vandredi', 'samdi'],
'weekdays_short' => ['dim', 'len', 'mad', 'mèk', 'jed', 'van', 'sam'],
'weekdays_min' => ['dim', 'len', 'mad', 'mèk', 'jed', 'van', 'sam'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count lane',
'y' => ':count lane',
'a_year' => ':count lane',
'month' => 'mwa :count',
'm' => 'mwa :count',
'a_month' => 'mwa :count',
'week' => 'semèn :count',
'w' => 'semèn :count',
'a_week' => 'semèn :count',
'day' => ':count jou',
'd' => ':count jou',
'a_day' => ':count jou',
'hour' => ':count lè',
'h' => ':count lè',
'a_hour' => ':count lè',
'minute' => ':count minit',
'min' => ':count minit',
'a_minute' => ':count minit',
'second' => ':count segonn',
's' => ':count segonn',
'a_second' => ':count segonn',
]);
src/Carbon/Lang/hu.php 0000644 00000007771 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Adam Brunner
* - Brett Johnson
* - balping
*/
use Carbon\CarbonInterface;
$huWeekEndings = ['vasárnap', 'hétfőn', 'kedden', 'szerdán', 'csütörtökön', 'pénteken', 'szombaton'];
return [
'year' => ':count év',
'y' => ':count év',
'month' => ':count hónap',
'm' => ':count hónap',
'week' => ':count hét',
'w' => ':count hét',
'day' => ':count nap',
'd' => ':count nap',
'hour' => ':count óra',
'h' => ':count óra',
'minute' => ':count perc',
'min' => ':count perc',
'second' => ':count másodperc',
's' => ':count másodperc',
'ago' => ':time',
'from_now' => ':time múlva',
'after' => ':time később',
'before' => ':time korábban',
'year_ago' => ':count éve',
'y_ago' => ':count éve',
'month_ago' => ':count hónapja',
'm_ago' => ':count hónapja',
'week_ago' => ':count hete',
'w_ago' => ':count hete',
'day_ago' => ':count napja',
'd_ago' => ':count napja',
'hour_ago' => ':count órája',
'h_ago' => ':count órája',
'minute_ago' => ':count perce',
'min_ago' => ':count perce',
'second_ago' => ':count másodperce',
's_ago' => ':count másodperce',
'year_after' => ':count évvel',
'y_after' => ':count évvel',
'month_after' => ':count hónappal',
'm_after' => ':count hónappal',
'week_after' => ':count héttel',
'w_after' => ':count héttel',
'day_after' => ':count nappal',
'd_after' => ':count nappal',
'hour_after' => ':count órával',
'h_after' => ':count órával',
'minute_after' => ':count perccel',
'min_after' => ':count perccel',
'second_after' => ':count másodperccel',
's_after' => ':count másodperccel',
'year_before' => ':count évvel',
'y_before' => ':count évvel',
'month_before' => ':count hónappal',
'm_before' => ':count hónappal',
'week_before' => ':count héttel',
'w_before' => ':count héttel',
'day_before' => ':count nappal',
'd_before' => ':count nappal',
'hour_before' => ':count órával',
'h_before' => ':count órával',
'minute_before' => ':count perccel',
'min_before' => ':count perccel',
'second_before' => ':count másodperccel',
's_before' => ':count másodperccel',
'months' => ['január', 'február', 'március', 'április', 'május', 'június', 'július', 'augusztus', 'szeptember', 'október', 'november', 'december'],
'months_short' => ['jan.', 'febr.', 'márc.', 'ápr.', 'máj.', 'jún.', 'júl.', 'aug.', 'szept.', 'okt.', 'nov.', 'dec.'],
'weekdays' => ['vasárnap', 'hétfő', 'kedd', 'szerda', 'csütörtök', 'péntek', 'szombat'],
'weekdays_short' => ['vas', 'hét', 'kedd', 'sze', 'csüt', 'pén', 'szo'],
'weekdays_min' => ['v', 'h', 'k', 'sze', 'cs', 'p', 'sz'],
'ordinal' => ':number.',
'diff_now' => 'most',
'diff_today' => 'ma',
'diff_yesterday' => 'tegnap',
'diff_tomorrow' => 'holnap',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'YYYY.MM.DD.',
'LL' => 'YYYY. MMMM D.',
'LLL' => 'YYYY. MMMM D. H:mm',
'LLLL' => 'YYYY. MMMM D., dddd H:mm',
],
'calendar' => [
'sameDay' => '[ma] LT[-kor]',
'nextDay' => '[holnap] LT[-kor]',
'nextWeek' => static function (CarbonInterface $date) use ($huWeekEndings) {
return '['.$huWeekEndings[$date->dayOfWeek].'] LT[-kor]';
},
'lastDay' => '[tegnap] LT[-kor]',
'lastWeek' => static function (CarbonInterface $date) use ($huWeekEndings) {
return '[múlt '.$huWeekEndings[$date->dayOfWeek].'] LT[-kor]';
},
'sameElse' => 'L',
],
'meridiem' => ['DE', 'DU'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' és '],
];
src/Carbon/Lang/hu_HU.php 0000644 00000000413 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/hu.php';
src/Carbon/Lang/hy.php 0000644 00000006606 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - mhamlet
*/
return [
'year' => ':count տարի',
'a_year' => 'տարի|:count տարի',
'y' => ':countտ',
'month' => ':count ամիս',
'a_month' => 'ամիս|:count ամիս',
'm' => ':countամ',
'week' => ':count շաբաթ',
'a_week' => 'շաբաթ|:count շաբաթ',
'w' => ':countշ',
'day' => ':count օր',
'a_day' => 'օր|:count օր',
'd' => ':countօր',
'hour' => ':count ժամ',
'a_hour' => 'ժամ|:count ժամ',
'h' => ':countժ',
'minute' => ':count րոպե',
'a_minute' => 'րոպե|:count րոպե',
'min' => ':countր',
'second' => ':count վայրկյան',
'a_second' => 'մի քանի վայրկյան|:count վայրկյան',
's' => ':countվրկ',
'ago' => ':time առաջ',
'from_now' => ':timeից',
'after' => ':time հետո',
'before' => ':time առաջ',
'diff_now' => 'հիմա',
'diff_today' => 'այսօր',
'diff_yesterday' => 'երեկ',
'diff_tomorrow' => 'վաղը',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY թ.',
'LLL' => 'D MMMM YYYY թ., HH:mm',
'LLLL' => 'dddd, D MMMM YYYY թ., HH:mm',
],
'calendar' => [
'sameDay' => '[այսօր] LT',
'nextDay' => '[վաղը] LT',
'nextWeek' => 'dddd [օրը ժամը] LT',
'lastDay' => '[երեկ] LT',
'lastWeek' => '[անցած] dddd [օրը ժամը] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return match ($period) {
'DDD', 'w', 'W', 'DDDo' => $number.($number === 1 ? '-ին' : '-րդ'),
default => $number,
};
},
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'գիշերվա';
}
if ($hour < 12) {
return 'առավոտվա';
}
if ($hour < 17) {
return 'ցերեկվա';
}
return 'երեկոյան';
},
'months' => ['հունվարի', 'փետրվարի', 'մարտի', 'ապրիլի', 'մայիսի', 'հունիսի', 'հուլիսի', 'օգոստոսի', 'սեպտեմբերի', 'հոկտեմբերի', 'նոյեմբերի', 'դեկտեմբերի'],
'months_standalone' => ['հունվար', 'փետրվար', 'մարտ', 'ապրիլ', 'մայիս', 'հունիս', 'հուլիս', 'օգոստոս', 'սեպտեմբեր', 'հոկտեմբեր', 'նոյեմբեր', 'դեկտեմբեր'],
'months_short' => ['հնվ', 'փտր', 'մրտ', 'ապր', 'մյս', 'հնս', 'հլս', 'օգս', 'սպտ', 'հկտ', 'նմբ', 'դկտ'],
'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => ['կիրակի', 'երկուշաբթի', 'երեքշաբթի', 'չորեքշաբթի', 'հինգշաբթի', 'ուրբաթ', 'շաբաթ'],
'weekdays_short' => ['կրկ', 'երկ', 'երք', 'չրք', 'հնգ', 'ուրբ', 'շբթ'],
'weekdays_min' => ['կրկ', 'երկ', 'երք', 'չրք', 'հնգ', 'ուրբ', 'շբթ'],
'list' => [', ', ' եւ '],
'first_day_of_week' => 1,
];
src/Carbon/Lang/hy_AM.php 0000644 00000000770 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - Tim Fish
* - Serhan Apaydın
* - JD Isaacks
*/
return array_replace_recursive(require __DIR__.'/hy.php', [
'from_now' => ':time հետո',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/i18n.php 0000644 00000001415 14753612052 0010716 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
'months' => ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'],
'months_short' => ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'],
'weekdays' => ['1', '2', '3', '4', '5', '6', '7'],
'weekdays_short' => ['1', '2', '3', '4', '5', '6', '7'],
'weekdays_min' => ['1', '2', '3', '4', '5', '6', '7'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/ia.php 0000644 00000000516 14753612052 0010531 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ia_FR.php';
src/Carbon/Lang/ia_FR.php 0000644 00000003165 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Fedora Project Nik Kalach nikka@fedoraproject.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['januario', 'februario', 'martio', 'april', 'maio', 'junio', 'julio', 'augusto', 'septembre', 'octobre', 'novembre', 'decembre'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'],
'weekdays' => ['dominica', 'lunedi', 'martedi', 'mercuridi', 'jovedi', 'venerdi', 'sabbato'],
'weekdays_short' => ['dom', 'lun', 'mar', 'mer', 'jov', 'ven', 'sab'],
'weekdays_min' => ['dom', 'lun', 'mar', 'mer', 'jov', 'ven', 'sab'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => 'anno :count',
'y' => 'anno :count',
'a_year' => 'anno :count',
'month' => ':count mense',
'm' => ':count mense',
'a_month' => ':count mense',
'week' => ':count septimana',
'w' => ':count septimana',
'a_week' => ':count septimana',
'day' => ':count die',
'd' => ':count die',
'a_day' => ':count die',
'hour' => ':count hora',
'h' => ':count hora',
'a_hour' => ':count hora',
'minute' => ':count minuscule',
'min' => ':count minuscule',
'a_minute' => ':count minuscule',
'second' => ':count secunda',
's' => ':count secunda',
'a_second' => ':count secunda',
]);
src/Carbon/Lang/id.php 0000644 00000005540 14753612052 0010536 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - du
* - JD Isaacks
* - Nafies Luthfi
* - Raymundus Jati Primanda (mundusjp)
* - diankur313
* - a-wip0
*/
return [
'year' => ':count tahun',
'a_year' => '{1}setahun|]1,Inf[:count tahun',
'y' => ':countthn',
'month' => ':count bulan',
'a_month' => '{1}sebulan|]1,Inf[:count bulan',
'm' => ':countbln',
'week' => ':count minggu',
'a_week' => '{1}seminggu|]1,Inf[:count minggu',
'w' => ':countmgg',
'day' => ':count hari',
'a_day' => '{1}sehari|]1,Inf[:count hari',
'd' => ':counthr',
'hour' => ':count jam',
'a_hour' => '{1}sejam|]1,Inf[:count jam',
'h' => ':countj',
'minute' => ':count menit',
'a_minute' => '{1}semenit|]1,Inf[:count menit',
'min' => ':countmnt',
'second' => ':count detik',
'a_second' => '{1}beberapa detik|]1,Inf[:count detik',
's' => ':countdt',
'ago' => ':time yang lalu',
'from_now' => ':time dari sekarang',
'after' => ':time setelahnya',
'before' => ':time sebelumnya',
'diff_now' => 'sekarang',
'diff_today' => 'Hari',
'diff_today_regexp' => 'Hari(?:\\s+ini)?(?:\\s+pukul)?',
'diff_yesterday' => 'kemarin',
'diff_yesterday_regexp' => 'Kemarin(?:\\s+pukul)?',
'diff_tomorrow' => 'besok',
'diff_tomorrow_regexp' => 'Besok(?:\\s+pukul)?',
'formats' => [
'LT' => 'HH.mm',
'LTS' => 'HH.mm.ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY [pukul] HH.mm',
'LLLL' => 'dddd, D MMMM YYYY [pukul] HH.mm',
],
'calendar' => [
'sameDay' => '[Hari ini pukul] LT',
'nextDay' => '[Besok pukul] LT',
'nextWeek' => 'dddd [pukul] LT',
'lastDay' => '[Kemarin pukul] LT',
'lastWeek' => 'dddd [lalu pukul] LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 11) {
return 'pagi';
}
if ($hour < 15) {
return 'siang';
}
if ($hour < 19) {
return 'sore';
}
return 'malam';
},
'months' => ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'November', 'Desember'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mei', 'Jun', 'Jul', 'Agt', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['Minggu', 'Senin', 'Selasa', 'Rabu', 'Kamis', 'Jumat', 'Sabtu'],
'weekdays_short' => ['Min', 'Sen', 'Sel', 'Rab', 'Kam', 'Jum', 'Sab'],
'weekdays_min' => ['Mg', 'Sn', 'Sl', 'Rb', 'Km', 'Jm', 'Sb'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' dan '],
];
src/Carbon/Lang/id_ID.php 0000644 00000000413 14753612052 0011104 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/id.php';
src/Carbon/Lang/ig.php 0000644 00000000516 14753612052 0010537 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ig_NG.php';
src/Carbon/Lang/ig_NG.php 0000644 00000003153 14753612052 0011123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - pablo@mandriva.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Jenụwarị', 'Febrụwarị', 'Maachị', 'Eprel', 'Mee', 'Juun', 'Julaị', 'Ọgọọst', 'Septemba', 'Ọktoba', 'Novemba', 'Disemba'],
'months_short' => ['Jen', 'Feb', 'Maa', 'Epr', 'Mee', 'Juu', 'Jul', 'Ọgọ', 'Sep', 'Ọkt', 'Nov', 'Dis'],
'weekdays' => ['sọnde', 'mọnde', 'tuzde', 'wenzde', 'tọsde', 'fraịde', 'satọde'],
'weekdays_short' => ['sọn', 'mọn', 'tuz', 'wen', 'tọs', 'fra', 'sat'],
'weekdays_min' => ['sọn', 'mọn', 'tuz', 'wen', 'tọs', 'fra', 'sat'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => 'afo :count',
'y' => 'afo :count',
'a_year' => 'afo :count',
'month' => 'önwa :count',
'm' => 'önwa :count',
'a_month' => 'önwa :count',
'week' => 'izu :count',
'w' => 'izu :count',
'a_week' => 'izu :count',
'day' => 'ụbọchị :count',
'd' => 'ụbọchị :count',
'a_day' => 'ụbọchị :count',
'hour' => 'awa :count',
'h' => 'awa :count',
'a_hour' => 'awa :count',
'minute' => 'minit :count',
'min' => 'minit :count',
'a_minute' => 'minit :count',
'second' => 'sekọnd :count',
's' => 'sekọnd :count',
'a_second' => 'sekọnd :count',
]);
src/Carbon/Lang/ii.php 0000644 00000003621 14753612052 0010541 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['ꎸꄑ', 'ꁯꋒ'],
'weekdays' => ['ꑭꆏꑍ', 'ꆏꊂꋍ', 'ꆏꊂꑍ', 'ꆏꊂꌕ', 'ꆏꊂꇖ', 'ꆏꊂꉬ', 'ꆏꊂꃘ'],
'weekdays_short' => ['ꑭꆏ', 'ꆏꋍ', 'ꆏꑍ', 'ꆏꌕ', 'ꆏꇖ', 'ꆏꉬ', 'ꆏꃘ'],
'weekdays_min' => ['ꑭꆏ', 'ꆏꋍ', 'ꆏꑍ', 'ꆏꌕ', 'ꆏꇖ', 'ꆏꉬ', 'ꆏꃘ'],
'months' => null,
'months_short' => ['ꋍꆪ', 'ꑍꆪ', 'ꌕꆪ', 'ꇖꆪ', 'ꉬꆪ', 'ꃘꆪ', 'ꏃꆪ', 'ꉆꆪ', 'ꈬꆪ', 'ꊰꆪ', 'ꊰꊪꆪ', 'ꊰꑋꆪ'],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D h:mm a',
'LLLL' => 'YYYY MMMM D, dddd h:mm a',
],
'year' => ':count ꒉ', // less reliable
'y' => ':count ꒉ', // less reliable
'a_year' => ':count ꒉ', // less reliable
'month' => ':count ꆪ',
'm' => ':count ꆪ',
'a_month' => ':count ꆪ',
'week' => ':count ꏃ', // less reliable
'w' => ':count ꏃ', // less reliable
'a_week' => ':count ꏃ', // less reliable
'day' => ':count ꏜ', // less reliable
'd' => ':count ꏜ', // less reliable
'a_day' => ':count ꏜ', // less reliable
'hour' => ':count ꄮꈉ',
'h' => ':count ꄮꈉ',
'a_hour' => ':count ꄮꈉ',
'minute' => ':count ꀄꊭ', // less reliable
'min' => ':count ꀄꊭ', // less reliable
'a_minute' => ':count ꀄꊭ', // less reliable
'second' => ':count ꇅ', // less reliable
's' => ':count ꇅ', // less reliable
'a_second' => ':count ꇅ', // less reliable
]);
src/Carbon/Lang/ik.php 0000644 00000000516 14753612052 0010543 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ik_CA.php';
src/Carbon/Lang/ik_CA.php 0000644 00000003451 14753612052 0011107 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - pablo@mandriva.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Siqiññaatchiaq', 'Siqiññaasrugruk', 'Paniqsiqsiivik', 'Qilġich Tatqiat', 'Suppivik', 'Iġñivik', 'Itchavik', 'Tiññivik', 'Amiġaiqsivik', 'Sikkuvik', 'Nippivik', 'Siqiñġiḷaq'],
'months_short' => ['Sñt', 'Sñs', 'Pan', 'Qil', 'Sup', 'Iġñ', 'Itc', 'Tiñ', 'Ami', 'Sik', 'Nip', 'Siq'],
'weekdays' => ['Minġuiqsioiq', 'Savałłiq', 'Ilaqtchiioiq', 'Qitchiioiq', 'Sisamiioiq', 'Tallimmiioiq', 'Maqinġuoiq'],
'weekdays_short' => ['Min', 'Sav', 'Ila', 'Qit', 'Sis', 'Tal', 'Maq'],
'weekdays_min' => ['Min', 'Sav', 'Ila', 'Qit', 'Sis', 'Tal', 'Maq'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => ':count ukiuq',
'y' => ':count ukiuq',
'a_year' => ':count ukiuq',
'month' => ':count Tatqiat',
'm' => ':count Tatqiat',
'a_month' => ':count Tatqiat',
'week' => ':count tatqiat', // less reliable
'w' => ':count tatqiat', // less reliable
'a_week' => ':count tatqiat', // less reliable
'day' => ':count siqiñiq', // less reliable
'd' => ':count siqiñiq', // less reliable
'a_day' => ':count siqiñiq', // less reliable
'hour' => ':count Siḷa', // less reliable
'h' => ':count Siḷa', // less reliable
'a_hour' => ':count Siḷa', // less reliable
'second' => ':count iġñiq', // less reliable
's' => ':count iġñiq', // less reliable
'a_second' => ':count iġñiq', // less reliable
]);
src/Carbon/Lang/in.php 0000644 00000000413 14753612052 0010542 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/id.php';
src/Carbon/Lang/is.php 0000644 00000003730 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kristján Ingi Geirsson
*/
return [
'year' => '1 ár|:count ár',
'y' => '1 ár|:count ár',
'month' => '1 mánuður|:count mánuðir',
'm' => '1 mánuður|:count mánuðir',
'week' => '1 vika|:count vikur',
'w' => '1 vika|:count vikur',
'day' => '1 dagur|:count dagar',
'd' => '1 dagur|:count dagar',
'hour' => '1 klukkutími|:count klukkutímar',
'h' => '1 klukkutími|:count klukkutímar',
'minute' => '1 mínúta|:count mínútur',
'min' => '1 mínúta|:count mínútur',
'second' => '1 sekúnda|:count sekúndur',
's' => '1 sekúnda|:count sekúndur',
'ago' => ':time síðan',
'from_now' => ':time síðan',
'after' => ':time eftir',
'before' => ':time fyrir',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' og '],
'meridiem' => ['fh', 'eh'],
'diff_now' => 'núna',
'diff_yesterday' => 'í gær',
'diff_tomorrow' => 'á morgun',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM [kl.] HH:mm',
'LLLL' => 'dddd D. MMMM YYYY [kl.] HH:mm',
],
'weekdays' => ['sunnudaginn', 'mánudaginn', 'þriðjudaginn', 'miðvikudaginn', 'fimmtudaginn', 'föstudaginn', 'laugardaginn'],
'weekdays_short' => ['sun', 'mán', 'þri', 'mið', 'fim', 'fös', 'lau'],
'weekdays_min' => ['sun', 'mán', 'þri', 'mið', 'fim', 'fös', 'lau'],
'months' => ['janúar', 'febrúar', 'mars', 'apríl', 'maí', 'júní', 'júlí', 'ágúst', 'september', 'október', 'nóvember', 'desember'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'maí', 'jún', 'júl', 'ágú', 'sep', 'okt', 'nóv', 'des'],
];
src/Carbon/Lang/is_IS.php 0000644 00000000413 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/is.php';
src/Carbon/Lang/it.php 0000644 00000007366 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ash
* - François B
* - Marco Perrando
* - Massimiliano Caniparoli
* - JD Isaacks
* - Andrea Martini
* - Francesco Marasco
* - Tizianoz93
* - Davide Casiraghi (davide-casiraghi)
* - Pete Scopes (pdscopes)
*/
use Carbon\CarbonInterface;
return [
'year' => ':count anno|:count anni',
'a_year' => 'un anno|:count anni',
'y' => ':count anno|:count anni',
'month' => ':count mese|:count mesi',
'a_month' => 'un mese|:count mesi',
'm' => ':count mese|:count mesi',
'week' => ':count settimana|:count settimane',
'a_week' => 'una settimana|:count settimane',
'w' => ':count set.',
'day' => ':count giorno|:count giorni',
'a_day' => 'un giorno|:count giorni',
'd' => ':count g|:count gg',
'hour' => ':count ora|:count ore',
'a_hour' => 'un\'ora|:count ore',
'h' => ':count h',
'minute' => ':count minuto|:count minuti',
'a_minute' => 'un minuto|:count minuti',
'min' => ':count min.',
'second' => ':count secondo|:count secondi',
'a_second' => 'alcuni secondi|:count secondi',
's' => ':count sec.',
'millisecond' => ':count millisecondo|:count millisecondi',
'a_millisecond' => 'un millisecondo|:count millisecondi',
'ms' => ':countms',
'microsecond' => ':count microsecondo|:count microsecondi',
'a_microsecond' => 'un microsecondo|:count microsecondi',
'µs' => ':countµs',
'ago' => ':time fa',
'from_now' => static function ($time) {
return (preg_match('/^\d.+$/', $time) ? 'tra' : 'in')." $time";
},
'after' => ':time dopo',
'before' => ':time prima',
'diff_now' => 'proprio ora',
'diff_today' => 'Oggi',
'diff_today_regexp' => 'Oggi(?:\\s+alle)?',
'diff_yesterday' => 'ieri',
'diff_yesterday_regexp' => 'Ieri(?:\\s+alle)?',
'diff_tomorrow' => 'domani',
'diff_tomorrow_regexp' => 'Domani(?:\\s+alle)?',
'diff_before_yesterday' => 'l\'altro ieri',
'diff_after_tomorrow' => 'dopodomani',
'period_interval' => 'ogni :interval',
'period_start_date' => 'dal :date',
'period_end_date' => 'al :date',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Oggi alle] LT',
'nextDay' => '[Domani alle] LT',
'nextWeek' => 'dddd [alle] LT',
'lastDay' => '[Ieri alle] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[la scorsa] dddd [alle] LT',
default => '[lo scorso] dddd [alle] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':numberº',
'months' => ['gennaio', 'febbraio', 'marzo', 'aprile', 'maggio', 'giugno', 'luglio', 'agosto', 'settembre', 'ottobre', 'novembre', 'dicembre'],
'months_short' => ['gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic'],
'weekdays' => ['domenica', 'lunedì', 'martedì', 'mercoledì', 'giovedì', 'venerdì', 'sabato'],
'weekdays_short' => ['dom', 'lun', 'mar', 'mer', 'gio', 'ven', 'sab'],
'weekdays_min' => ['do', 'lu', 'ma', 'me', 'gi', 've', 'sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' e '],
'ordinal_words' => [
'of' => 'di',
'first' => 'primo',
'second' => 'secondo',
'third' => 'terzo',
'fourth' => 'quarto',
'fifth' => 'quinto',
'last' => 'ultimo',
],
];
src/Carbon/Lang/it_CH.php 0000644 00000000606 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Propaganistas
*/
return array_replace_recursive(require __DIR__.'/it.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
]);
src/Carbon/Lang/it_IT.php 0000644 00000000504 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return require __DIR__.'/it.php';
src/Carbon/Lang/it_SM.php 0000644 00000000413 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/it.php';
src/Carbon/Lang/it_VA.php 0000644 00000000413 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/it.php';
src/Carbon/Lang/iu.php 0000644 00000000516 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/iu_CA.php';
src/Carbon/Lang/iu_CA.php 0000644 00000003704 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Pablo Saratxaga pablo@mandriva.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'MM/DD/YY',
],
'months' => ['ᔮᓄᐊᓕ', 'ᕕᕗᐊᓕ', 'ᒪᔅᓯ', 'ᐃᐳᓗ', 'ᒪᐃ', 'ᔪᓂ', 'ᔪᓚᐃ', 'ᐊᒋᓯ', 'ᓯᑎᕙ', 'ᐊᑦᑐᕙ', 'ᓄᕕᕙ', 'ᑎᓯᕝᕙ'],
'months_short' => ['ᔮᓄ', 'ᕕᕗ', 'ᒪᔅ', 'ᐃᐳ', 'ᒪᐃ', 'ᔪᓂ', 'ᔪᓚ', 'ᐊᒋ', 'ᓯᑎ', 'ᐊᑦ', 'ᓄᕕ', 'ᑎᓯ'],
'weekdays' => ['ᓈᑦᑎᖑᔭᕐᕕᒃ', 'ᓇᒡᒐᔾᔭᐅ', 'ᓇᒡᒐᔾᔭᐅᓕᖅᑭᑦ', 'ᐱᖓᓲᓕᖅᓯᐅᑦ', 'ᕿᑎᖅᑰᑦ', 'ᐅᓪᓗᕈᓘᑐᐃᓇᖅ', 'ᓯᕙᑖᕕᒃ'],
'weekdays_short' => ['ᓈ', 'ᓇ', 'ᓕ', 'ᐱ', 'ᕿ', 'ᐅ', 'ᓯ'],
'weekdays_min' => ['ᓈ', 'ᓇ', 'ᓕ', 'ᐱ', 'ᕿ', 'ᐅ', 'ᓯ'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => ':count ᐅᑭᐅᖅ',
'y' => ':count ᐅᑭᐅᖅ',
'a_year' => ':count ᐅᑭᐅᖅ',
'month' => ':count qaammat',
'm' => ':count qaammat',
'a_month' => ':count qaammat',
'week' => ':count sapaatip akunnera',
'w' => ':count sapaatip akunnera',
'a_week' => ':count sapaatip akunnera',
'day' => ':count ulloq',
'd' => ':count ulloq',
'a_day' => ':count ulloq',
'hour' => ':count ikarraq',
'h' => ':count ikarraq',
'a_hour' => ':count ikarraq',
'minute' => ':count titiqqaralaaq', // less reliable
'min' => ':count titiqqaralaaq', // less reliable
'a_minute' => ':count titiqqaralaaq', // less reliable
'second' => ':count marluk', // less reliable
's' => ':count marluk', // less reliable
'a_second' => ':count marluk', // less reliable
]);
src/Carbon/Lang/iw.php 0000644 00000004013 14753612052 0010553 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'months' => ['ינואר', 'פברואר', 'מרץ', 'אפריל', 'מאי', 'יוני', 'יולי', 'אוגוסט', 'ספטמבר', 'אוקטובר', 'נובמבר', 'דצמבר'],
'months_short' => ['ינו׳', 'פבר׳', 'מרץ', 'אפר׳', 'מאי', 'יוני', 'יולי', 'אוג׳', 'ספט׳', 'אוק׳', 'נוב׳', 'דצמ׳'],
'weekdays' => ['יום ראשון', 'יום שני', 'יום שלישי', 'יום רביעי', 'יום חמישי', 'יום שישי', 'יום שבת'],
'weekdays_short' => ['יום א׳', 'יום ב׳', 'יום ג׳', 'יום ד׳', 'יום ה׳', 'יום ו׳', 'שבת'],
'weekdays_min' => ['א׳', 'ב׳', 'ג׳', 'ד׳', 'ה׳', 'ו׳', 'ש׳'],
'meridiem' => ['לפנה״צ', 'אחה״צ'],
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'D.M.YYYY',
'LL' => 'D בMMM YYYY',
'LLL' => 'D בMMMM YYYY H:mm',
'LLLL' => 'dddd, D בMMMM YYYY H:mm',
],
'year' => ':count שנה',
'y' => ':count שנה',
'a_year' => ':count שנה',
'month' => ':count חודש',
'm' => ':count חודש',
'a_month' => ':count חודש',
'week' => ':count שבוע',
'w' => ':count שבוע',
'a_week' => ':count שבוע',
'day' => ':count יום',
'd' => ':count יום',
'a_day' => ':count יום',
'hour' => ':count שעה',
'h' => ':count שעה',
'a_hour' => ':count שעה',
'minute' => ':count דקה',
'min' => ':count דקה',
'a_minute' => ':count דקה',
'second' => ':count שניה',
's' => ':count שניה',
'a_second' => ':count שניה',
'ago' => 'לפני :time',
'from_now' => 'בעוד :time',
]);
src/Carbon/Lang/ja.php 0000644 00000007735 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Takuya Sawada
* - Atsushi Tanaka
* - François B
* - Jason Katz-Brown
* - Serhan Apaydın
* - XueWei
* - JD Isaacks
* - toyama satoshi
* - atakigawa
*/
use Carbon\CarbonInterface;
return [
'year' => ':count年',
'y' => ':count年',
'month' => ':countヶ月',
'm' => ':countヶ月',
'week' => ':count週間',
'w' => ':count週間',
'day' => ':count日',
'd' => ':count日',
'hour' => ':count時間',
'h' => ':count時間',
'minute' => ':count分',
'min' => ':count分',
'second' => ':count秒',
'a_second' => '{1}数秒|]1,Inf[:count秒',
's' => ':count秒',
'ago' => ':time前',
'from_now' => ':time後',
'after' => ':time後',
'before' => ':time前',
'diff_now' => '今',
'diff_today' => '今日',
'diff_yesterday' => '昨日',
'diff_tomorrow' => '明日',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY/MM/DD',
'LL' => 'YYYY年M月D日',
'LLL' => 'YYYY年M月D日 HH:mm',
'LLLL' => 'YYYY年M月D日 dddd HH:mm',
],
'calendar' => [
'sameDay' => '[今日] LT',
'nextDay' => '[明日] LT',
'nextWeek' => static function (CarbonInterface $current, \Carbon\CarbonInterface $other) {
if ($other->week !== $current->week) {
return '[来週]dddd LT';
}
return 'dddd LT';
},
'lastDay' => '[昨日] LT',
'lastWeek' => static function (CarbonInterface $current, \Carbon\CarbonInterface $other) {
if ($other->week !== $current->week) {
return '[先週]dddd LT';
}
return 'dddd LT';
},
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return match ($period) {
'd', 'D', 'DDD' => $number.'日',
default => $number,
};
},
'meridiem' => ['午前', '午後'],
'months' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
'weekdays' => ['日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'],
'weekdays_short' => ['日', '月', '火', '水', '木', '金', '土'],
'weekdays_min' => ['日', '月', '火', '水', '木', '金', '土'],
'list' => '、',
'alt_numbers' => ['〇', '一', '二', '三', '四', '五', '六', '七', '八', '九', '十', '十一', '十二', '十三', '十四', '十五', '十六', '十七', '十八', '十九', '二十', '二十一', '二十二', '二十三', '二十四', '二十五', '二十六', '二十七', '二十八', '二十九', '三十', '三十一', '三十二', '三十三', '三十四', '三十五', '三十六', '三十七', '三十八', '三十九', '四十', '四十一', '四十二', '四十三', '四十四', '四十五', '四十六', '四十七', '四十八', '四十九', '五十', '五十一', '五十二', '五十三', '五十四', '五十五', '五十六', '五十七', '五十八', '五十九', '六十', '六十一', '六十二', '六十三', '六十四', '六十五', '六十六', '六十七', '六十八', '六十九', '七十', '七十一', '七十二', '七十三', '七十四', '七十五', '七十六', '七十七', '七十八', '七十九', '八十', '八十一', '八十二', '八十三', '八十四', '八十五', '八十六', '八十七', '八十八', '八十九', '九十', '九十一', '九十二', '九十三', '九十四', '九十五', '九十六', '九十七', '九十八', '九十九'],
'alt_numbers_pow' => [
10000 => '万',
1000 => '千',
100 => '百',
],
];
src/Carbon/Lang/ja_JP.php 0000644 00000000413 14753612052 0011117 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ja.php';
src/Carbon/Lang/jgo.php 0000644 00000000507 14753612052 0010717 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/jmc.php 0000644 00000002103 14753612052 0010703 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['utuko', 'kyiukonyi'],
'weekdays' => ['Jumapilyi', 'Jumatatuu', 'Jumanne', 'Jumatanu', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'months' => ['Januari', 'Februari', 'Machi', 'Aprilyi', 'Mei', 'Junyi', 'Julyai', 'Agusti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/jv.php 0000644 00000004544 14753612052 0010564 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - tgfjt
* - JD Isaacks
*/
return [
'year' => '{1}setaun|]1,Inf[:count taun',
'month' => '{1}sewulan|]1,Inf[:count wulan',
'week' => '{1}sakminggu|]1,Inf[:count minggu',
'day' => '{1}sedinten|]1,Inf[:count dinten',
'hour' => '{1}setunggal jam|]1,Inf[:count jam',
'minute' => '{1}setunggal menit|]1,Inf[:count menit',
'second' => '{1}sawetawis detik|]1,Inf[:count detik',
'ago' => ':time ingkang kepengker',
'from_now' => 'wonten ing :time',
'diff_today' => 'Dinten',
'diff_yesterday' => 'Kala',
'diff_yesterday_regexp' => 'Kala(?:\\s+wingi)?(?:\\s+pukul)?',
'diff_tomorrow' => 'Mbenjang',
'diff_tomorrow_regexp' => 'Mbenjang(?:\\s+pukul)?',
'diff_today_regexp' => 'Dinten(?:\\s+puniko)?(?:\\s+pukul)?',
'formats' => [
'LT' => 'HH.mm',
'LTS' => 'HH.mm.ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY [pukul] HH.mm',
'LLLL' => 'dddd, D MMMM YYYY [pukul] HH.mm',
],
'calendar' => [
'sameDay' => '[Dinten puniko pukul] LT',
'nextDay' => '[Mbenjang pukul] LT',
'nextWeek' => 'dddd [pukul] LT',
'lastDay' => '[Kala wingi pukul] LT',
'lastWeek' => 'dddd [kepengker pukul] LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 11) {
return 'enjing';
}
if ($hour < 15) {
return 'siyang';
}
if ($hour < 19) {
return 'sonten';
}
return 'ndalu';
},
'months' => ['Januari', 'Februari', 'Maret', 'April', 'Mei', 'Juni', 'Juli', 'Agustus', 'September', 'Oktober', 'Nopember', 'Desember'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mei', 'Jun', 'Jul', 'Ags', 'Sep', 'Okt', 'Nop', 'Des'],
'weekdays' => ['Minggu', 'Senen', 'Seloso', 'Rebu', 'Kemis', 'Jemuwah', 'Septu'],
'weekdays_short' => ['Min', 'Sen', 'Sel', 'Reb', 'Kem', 'Jem', 'Sep'],
'weekdays_min' => ['Mg', 'Sn', 'Sl', 'Rb', 'Km', 'Jm', 'Sp'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' lan '],
];
src/Carbon/Lang/ka.php 0000644 00000017036 14753612052 0010540 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Tornike Razmadze
* - François B
* - Lasha Dolidze
* - Tim Fish
* - JD Isaacks
* - Tornike Razmadze
* - François B
* - Lasha Dolidze
* - JD Isaacks
* - LONGMAN
* - Avtandil Kikabidze (akalongman)
* - Levan Velijanashvili (Stichoza)
*/
use Carbon\CarbonInterface;
return [
'year' => ':count წელი',
'y' => ':count წელი',
'a_year' => '{1}წელი|]1,Inf[:count წელი',
'month' => ':count თვე',
'm' => ':count თვე',
'a_month' => '{1}თვე|]1,Inf[:count თვე',
'week' => ':count კვირა',
'w' => ':count კვირა',
'a_week' => '{1}კვირა|]1,Inf[:count კვირა',
'day' => ':count დღე',
'd' => ':count დღე',
'a_day' => '{1}დღე|]1,Inf[:count დღე',
'hour' => ':count საათი',
'h' => ':count საათი',
'a_hour' => '{1}საათი|]1,Inf[:count საათი',
'minute' => ':count წუთი',
'min' => ':count წუთი',
'a_minute' => '{1}წუთი|]1,Inf[:count წუთი',
'second' => ':count წამი',
's' => ':count წამი',
'a_second' => '{1}რამდენიმე წამი|]1,Inf[:count წამი',
'ago' => static function ($time) {
$replacements = [
// year
'წელი' => 'წლის',
// month
'თვე' => 'თვის',
// week
'კვირა' => 'კვირის',
// day
'დღე' => 'დღის',
// hour
'საათი' => 'საათის',
// minute
'წუთი' => 'წუთის',
// second
'წამი' => 'წამის',
];
$time = strtr($time, array_flip($replacements));
$time = strtr($time, $replacements);
return "$time წინ";
},
'from_now' => static function ($time) {
$replacements = [
// year
'წელი' => 'წელიწადში',
// week
'კვირა' => 'კვირაში',
// day
'დღე' => 'დღეში',
// month
'თვე' => 'თვეში',
// hour
'საათი' => 'საათში',
// minute
'წუთი' => 'წუთში',
// second
'წამი' => 'წამში',
];
$time = strtr($time, array_flip($replacements));
$time = strtr($time, $replacements);
return $time;
},
'after' => static function ($time) {
$replacements = [
// year
'წელი' => 'წლის',
// month
'თვე' => 'თვის',
// week
'კვირა' => 'კვირის',
// day
'დღე' => 'დღის',
// hour
'საათი' => 'საათის',
// minute
'წუთი' => 'წუთის',
// second
'წამი' => 'წამის',
];
$time = strtr($time, array_flip($replacements));
$time = strtr($time, $replacements);
return "$time შემდეგ";
},
'before' => static function ($time) {
$replacements = [
// year
'წელი' => 'წლით',
// month
'თვე' => 'თვით',
// week
'კვირა' => 'კვირით',
// day
'დღე' => 'დღით',
// hour
'საათი' => 'საათით',
// minute
'წუთი' => 'წუთით',
// second
'წამი' => 'წამით',
];
$time = strtr($time, array_flip($replacements));
$time = strtr($time, $replacements);
return "$time ადრე";
},
'diff_now' => 'ახლა',
'diff_today' => 'დღეს',
'diff_yesterday' => 'გუშინ',
'diff_tomorrow' => 'ხვალ',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[დღეს], LT[-ზე]',
'nextDay' => '[ხვალ], LT[-ზე]',
'nextWeek' => static function (CarbonInterface $current, \Carbon\CarbonInterface $other) {
return ($current->isSameWeek($other) ? '' : '[შემდეგ] ').'dddd, LT[-ზე]';
},
'lastDay' => '[გუშინ], LT[-ზე]',
'lastWeek' => '[წინა] dddd, LT-ზე',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
if ($number === 0) {
return $number;
}
if ($number === 1) {
return $number.'-ლი';
}
if (($number < 20) || ($number <= 100 && ($number % 20 === 0)) || ($number % 100 === 0)) {
return 'მე-'.$number;
}
return $number.'-ე';
},
'months' => ['იანვარი', 'თებერვალი', 'მარტი', 'აპრილი', 'მაისი', 'ივნისი', 'ივლისი', 'აგვისტო', 'სექტემბერი', 'ოქტომბერი', 'ნოემბერი', 'დეკემბერი'],
'months_standalone' => ['იანვარს', 'თებერვალს', 'მარტს', 'აპრილს', 'მაისს', 'ივნისს', 'ივლისს', 'აგვისტოს', 'სექტემბერს', 'ოქტომბერს', 'ნოემბერს', 'დეკემბერს'],
'months_short' => ['იან', 'თებ', 'მარ', 'აპრ', 'მაი', 'ივნ', 'ივლ', 'აგვ', 'სექ', 'ოქტ', 'ნოე', 'დეკ'],
'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => ['კვირას', 'ორშაბათს', 'სამშაბათს', 'ოთხშაბათს', 'ხუთშაბათს', 'პარასკევს', 'შაბათს'],
'weekdays_standalone' => ['კვირა', 'ორშაბათი', 'სამშაბათი', 'ოთხშაბათი', 'ხუთშაბათი', 'პარასკევი', 'შაბათი'],
'weekdays_short' => ['კვი', 'ორშ', 'სამ', 'ოთხ', 'ხუთ', 'პარ', 'შაბ'],
'weekdays_min' => ['კვ', 'ორ', 'სა', 'ოთ', 'ხუ', 'პა', 'შა'],
'weekdays_regexp' => '/^([^d].*|.*[^d])$/',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' და '],
'meridiem' => static function ($hour) {
if ($hour >= 4) {
if ($hour < 11) {
return 'დილის';
}
if ($hour < 16) {
return 'შუადღის';
}
if ($hour < 22) {
return 'საღამოს';
}
}
return 'ღამის';
},
];
src/Carbon/Lang/ka_GE.php 0000644 00000000413 14753612052 0011102 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ka.php';
src/Carbon/Lang/kab.php 0000644 00000000517 14753612052 0010676 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/kab_DZ.php';
src/Carbon/Lang/kab_DZ.php 0000644 00000003430 14753612052 0011270 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - belkacem77@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Yennayer', 'Fuṛar', 'Meɣres', 'Yebrir', 'Mayyu', 'Yunyu', 'Yulyu', 'ɣuct', 'Ctembeṛ', 'Tubeṛ', 'Wambeṛ', 'Dujembeṛ'],
'months_short' => ['Yen', 'Fur', 'Meɣ', 'Yeb', 'May', 'Yun', 'Yul', 'ɣuc', 'Cte', 'Tub', 'Wam', 'Duj'],
'weekdays' => ['Acer', 'Arim', 'Aram', 'Ahad', 'Amhad', 'Sem', 'Sed'],
'weekdays_short' => ['Ace', 'Ari', 'Ara', 'Aha', 'Amh', 'Sem', 'Sed'],
'weekdays_min' => ['Ace', 'Ari', 'Ara', 'Aha', 'Amh', 'Sem', 'Sed'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'meridiem' => ['FT', 'MD'],
'year' => ':count n yiseggasen',
'y' => ':count n yiseggasen',
'a_year' => ':count n yiseggasen',
'month' => ':count n wayyuren',
'm' => ':count n wayyuren',
'a_month' => ':count n wayyuren',
'week' => ':count n ledwaṛ', // less reliable
'w' => ':count n ledwaṛ', // less reliable
'a_week' => ':count n ledwaṛ', // less reliable
'day' => ':count n wussan',
'd' => ':count n wussan',
'a_day' => ':count n wussan',
'hour' => ':count n tsaɛtin',
'h' => ':count n tsaɛtin',
'a_hour' => ':count n tsaɛtin',
'minute' => ':count n tedqiqin',
'min' => ':count n tedqiqin',
'a_minute' => ':count n tedqiqin',
'second' => ':count tasdidt', // less reliable
's' => ':count tasdidt', // less reliable
'a_second' => ':count tasdidt', // less reliable
]);
src/Carbon/Lang/kam.php 0000644 00000003701 14753612052 0010707 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['Ĩyakwakya', 'Ĩyawĩoo'],
'weekdays' => ['Wa kyumwa', 'Wa kwambĩlĩlya', 'Wa kelĩ', 'Wa katatũ', 'Wa kana', 'Wa katano', 'Wa thanthatũ'],
'weekdays_short' => ['Wky', 'Wkw', 'Wkl', 'Wtũ', 'Wkn', 'Wtn', 'Wth'],
'weekdays_min' => ['Wky', 'Wkw', 'Wkl', 'Wtũ', 'Wkn', 'Wtn', 'Wth'],
'months' => ['Mwai wa mbee', 'Mwai wa kelĩ', 'Mwai wa katatũ', 'Mwai wa kana', 'Mwai wa katano', 'Mwai wa thanthatũ', 'Mwai wa muonza', 'Mwai wa nyaanya', 'Mwai wa kenda', 'Mwai wa ĩkumi', 'Mwai wa ĩkumi na ĩmwe', 'Mwai wa ĩkumi na ilĩ'],
'months_short' => ['Mbe', 'Kel', 'Ktũ', 'Kan', 'Ktn', 'Tha', 'Moo', 'Nya', 'Knd', 'Ĩku', 'Ĩkm', 'Ĩkl'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
// Too unreliable
/*
'year' => ':count mbua', // less reliable
'y' => ':count mbua', // less reliable
'a_year' => ':count mbua', // less reliable
'month' => ':count ndakitali', // less reliable
'm' => ':count ndakitali', // less reliable
'a_month' => ':count ndakitali', // less reliable
'day' => ':count wia', // less reliable
'd' => ':count wia', // less reliable
'a_day' => ':count wia', // less reliable
'hour' => ':count orasan', // less reliable
'h' => ':count orasan', // less reliable
'a_hour' => ':count orasan', // less reliable
'minute' => ':count orasan', // less reliable
'min' => ':count orasan', // less reliable
'a_minute' => ':count orasan', // less reliable
*/
]);
src/Carbon/Lang/kde.php 0000644 00000002466 14753612052 0010711 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Muhi', 'Chilo'],
'weekdays' => ['Liduva lyapili', 'Liduva lyatatu', 'Liduva lyanchechi', 'Liduva lyannyano', 'Liduva lyannyano na linji', 'Liduva lyannyano na mavili', 'Liduva litandi'],
'weekdays_short' => ['Ll2', 'Ll3', 'Ll4', 'Ll5', 'Ll6', 'Ll7', 'Ll1'],
'weekdays_min' => ['Ll2', 'Ll3', 'Ll4', 'Ll5', 'Ll6', 'Ll7', 'Ll1'],
'months' => ['Mwedi Ntandi', 'Mwedi wa Pili', 'Mwedi wa Tatu', 'Mwedi wa Nchechi', 'Mwedi wa Nnyano', 'Mwedi wa Nnyano na Umo', 'Mwedi wa Nnyano na Mivili', 'Mwedi wa Nnyano na Mitatu', 'Mwedi wa Nnyano na Nchechi', 'Mwedi wa Nnyano na Nnyano', 'Mwedi wa Nnyano na Nnyano na U', 'Mwedi wa Nnyano na Nnyano na M'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/kea.php 0000644 00000003647 14753612052 0010710 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['a', 'p'],
'weekdays' => ['dumingu', 'sigunda-fera', 'tersa-fera', 'kuarta-fera', 'kinta-fera', 'sesta-fera', 'sabadu'],
'weekdays_short' => ['dum', 'sig', 'ter', 'kua', 'kin', 'ses', 'sab'],
'weekdays_min' => ['du', 'si', 'te', 'ku', 'ki', 'se', 'sa'],
'weekdays_standalone' => ['dumingu', 'sigunda-fera', 'tersa-fera', 'kuarta-fera', 'kinta-fera', 'sesta-fera', 'sábadu'],
'months' => ['Janeru', 'Febreru', 'Marsu', 'Abril', 'Maiu', 'Junhu', 'Julhu', 'Agostu', 'Setenbru', 'Otubru', 'Nuvenbru', 'Dizenbru'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Otu', 'Nuv', 'Diz'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D [di] MMMM [di] YYYY HH:mm',
'LLLL' => 'dddd, D [di] MMMM [di] YYYY HH:mm',
],
'year' => ':count otunu', // less reliable
'y' => ':count otunu', // less reliable
'a_year' => ':count otunu', // less reliable
'week' => ':count día dumingu', // less reliable
'w' => ':count día dumingu', // less reliable
'a_week' => ':count día dumingu', // less reliable
'day' => ':count diâ', // less reliable
'd' => ':count diâ', // less reliable
'a_day' => ':count diâ', // less reliable
'minute' => ':count sugundu', // less reliable
'min' => ':count sugundu', // less reliable
'a_minute' => ':count sugundu', // less reliable
'second' => ':count dós', // less reliable
's' => ':count dós', // less reliable
'a_second' => ':count dós', // less reliable
]);
src/Carbon/Lang/khq.php 0000644 00000002074 14753612052 0010724 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Adduha', 'Aluula'],
'weekdays' => ['Alhadi', 'Atini', 'Atalata', 'Alarba', 'Alhamiisa', 'Aljuma', 'Assabdu'],
'weekdays_short' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alj', 'Ass'],
'weekdays_min' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alj', 'Ass'],
'months' => ['Žanwiye', 'Feewiriye', 'Marsi', 'Awiril', 'Me', 'Žuweŋ', 'Žuyye', 'Ut', 'Sektanbur', 'Oktoobur', 'Noowanbur', 'Deesanbur'],
'months_short' => ['Žan', 'Fee', 'Mar', 'Awi', 'Me', 'Žuw', 'Žuy', 'Ut', 'Sek', 'Okt', 'Noo', 'Dee'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/ki.php 0000644 00000004245 14753612052 0010546 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['Kiroko', 'Hwaĩ-inĩ'],
'weekdays' => ['Kiumia', 'Njumatatũ', 'Njumaine', 'Njumatana', 'Aramithi', 'Njumaa', 'Njumamothi'],
'weekdays_short' => ['KMA', 'NTT', 'NMN', 'NMT', 'ART', 'NMA', 'NMM'],
'weekdays_min' => ['KMA', 'NTT', 'NMN', 'NMT', 'ART', 'NMA', 'NMM'],
'months' => ['Njenuarĩ', 'Mwere wa kerĩ', 'Mwere wa gatatũ', 'Mwere wa kana', 'Mwere wa gatano', 'Mwere wa gatandatũ', 'Mwere wa mũgwanja', 'Mwere wa kanana', 'Mwere wa kenda', 'Mwere wa ikũmi', 'Mwere wa ikũmi na ũmwe', 'Ndithemba'],
'months_short' => ['JEN', 'WKR', 'WGT', 'WKN', 'WTN', 'WTD', 'WMJ', 'WNN', 'WKD', 'WIK', 'WMW', 'DIT'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'year' => ':count mĩaka', // less reliable
'y' => ':count mĩaka', // less reliable
'a_year' => ':count mĩaka', // less reliable
'month' => ':count mweri', // less reliable
'm' => ':count mweri', // less reliable
'a_month' => ':count mweri', // less reliable
'week' => ':count kiumia', // less reliable
'w' => ':count kiumia', // less reliable
'a_week' => ':count kiumia', // less reliable
'day' => ':count mũthenya', // less reliable
'd' => ':count mũthenya', // less reliable
'a_day' => ':count mũthenya', // less reliable
'hour' => ':count thaa', // less reliable
'h' => ':count thaa', // less reliable
'a_hour' => ':count thaa', // less reliable
'minute' => ':count mundu', // less reliable
'min' => ':count mundu', // less reliable
'a_minute' => ':count mundu', // less reliable
'second' => ':count igego', // less reliable
's' => ':count igego', // less reliable
'a_second' => ':count igego', // less reliable
]);
src/Carbon/Lang/kk.php 0000644 00000007170 14753612052 0010550 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - Talat Uspanov
* - Нурлан Рахимжанов
* - Toleugazy Kali
*/
return [
'year' => ':count жыл',
'a_year' => '{1}бір жыл|:count жыл',
'y' => ':count ж.',
'month' => ':count ай',
'a_month' => '{1}бір ай|:count ай',
'm' => ':count ай',
'week' => ':count апта',
'a_week' => '{1}бір апта',
'w' => ':count ап.',
'day' => ':count күн',
'a_day' => '{1}бір күн|:count күн',
'd' => ':count к.',
'hour' => ':count сағат',
'a_hour' => '{1}бір сағат|:count сағат',
'h' => ':count са.',
'minute' => ':count минут',
'a_minute' => '{1}бір минут|:count минут',
'min' => ':count м.',
'second' => ':count секунд',
'a_second' => '{1}бірнеше секунд|:count секунд',
's' => ':count се.',
'ago' => ':time бұрын',
'from_now' => ':time ішінде',
'after' => ':time кейін',
'before' => ':time бұрын',
'diff_now' => 'қазір',
'diff_today' => 'Бүгін',
'diff_today_regexp' => 'Бүгін(?:\\s+сағат)?',
'diff_yesterday' => 'кеше',
'diff_yesterday_regexp' => 'Кеше(?:\\s+сағат)?',
'diff_tomorrow' => 'ертең',
'diff_tomorrow_regexp' => 'Ертең(?:\\s+сағат)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Бүгін сағат] LT',
'nextDay' => '[Ертең сағат] LT',
'nextWeek' => 'dddd [сағат] LT',
'lastDay' => '[Кеше сағат] LT',
'lastWeek' => '[Өткен аптаның] dddd [сағат] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
static $suffixes = [
0 => '-ші',
1 => '-ші',
2 => '-ші',
3 => '-ші',
4 => '-ші',
5 => '-ші',
6 => '-шы',
7 => '-ші',
8 => '-ші',
9 => '-шы',
10 => '-шы',
20 => '-шы',
30 => '-шы',
40 => '-шы',
50 => '-ші',
60 => '-шы',
70 => '-ші',
80 => '-ші',
90 => '-шы',
100 => '-ші',
];
return $number.($suffixes[$number] ?? $suffixes[$number % 10] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
},
'months' => ['қаңтар', 'ақпан', 'наурыз', 'сәуір', 'мамыр', 'маусым', 'шілде', 'тамыз', 'қыркүйек', 'қазан', 'қараша', 'желтоқсан'],
'months_short' => ['қаң', 'ақп', 'нау', 'сәу', 'мам', 'мау', 'шіл', 'там', 'қыр', 'қаз', 'қар', 'жел'],
'weekdays' => ['жексенбі', 'дүйсенбі', 'сейсенбі', 'сәрсенбі', 'бейсенбі', 'жұма', 'сенбі'],
'weekdays_short' => ['жек', 'дүй', 'сей', 'сәр', 'бей', 'жұм', 'сен'],
'weekdays_min' => ['жк', 'дй', 'сй', 'ср', 'бй', 'жм', 'сн'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' және '],
];
src/Carbon/Lang/kk_KZ.php 0000644 00000000413 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/kk.php';
src/Carbon/Lang/kkj.php 0000644 00000000507 14753612052 0010717 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/kl.php 0000644 00000000516 14753612052 0010546 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/kl_GL.php';
src/Carbon/Lang/kl_GL.php 0000644 00000005014 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Danish Standards Association bug-glibc-locales@gnu.org
* - John Eyðstein Johannesen (mashema)
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY HH:mm',
'LLLL' => 'dddd [d.] D. MMMM YYYY [kl.] HH:mm',
],
'months' => ['januaarip', 'februaarip', 'marsip', 'apriilip', 'maajip', 'juunip', 'juulip', 'aggustip', 'septembarip', 'oktobarip', 'novembarip', 'decembarip'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
'weekdays' => ['sapaat', 'ataasinngorneq', 'marlunngorneq', 'pingasunngorneq', 'sisamanngorneq', 'tallimanngorneq', 'arfininngorneq'],
'weekdays_short' => ['sap', 'ata', 'mar', 'pin', 'sis', 'tal', 'arf'],
'weekdays_min' => ['sap', 'ata', 'mar', 'pin', 'sis', 'tal', 'arf'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => '{1}ukioq :count|{0}:count ukiut|]1,Inf[ukiut :count',
'a_year' => '{1}ukioq|{0}:count ukiut|]1,Inf[ukiut :count',
'y' => '{1}:countyr|{0}:countyrs|]1,Inf[:countyrs',
'month' => '{1}qaammat :count|{0}:count qaammatit|]1,Inf[qaammatit :count',
'a_month' => '{1}qaammat|{0}:count qaammatit|]1,Inf[qaammatit :count',
'm' => '{1}:countmo|{0}:countmos|]1,Inf[:countmos',
'week' => '{1}:count sap. ak.|{0}:count sap. ak.|]1,Inf[:count sap. ak.',
'a_week' => '{1}a sap. ak.|{0}:count sap. ak.|]1,Inf[:count sap. ak.',
'w' => ':countw',
'day' => '{1}:count ulloq|{0}:count ullut|]1,Inf[:count ullut',
'a_day' => '{1}a ulloq|{0}:count ullut|]1,Inf[:count ullut',
'd' => ':countd',
'hour' => '{1}:count tiimi|{0}:count tiimit|]1,Inf[:count tiimit',
'a_hour' => '{1}tiimi|{0}:count tiimit|]1,Inf[:count tiimit',
'h' => ':counth',
'minute' => '{1}:count minutsi|{0}:count minutsit|]1,Inf[:count minutsit',
'a_minute' => '{1}a minutsi|{0}:count minutsit|]1,Inf[:count minutsit',
'min' => ':countm',
'second' => '{1}:count sikunti|{0}:count sikuntit|]1,Inf[:count sikuntit',
'a_second' => '{1}sikunti|{0}:count sikuntit|]1,Inf[:count sikuntit',
's' => ':counts',
'ago' => ':time matuma siorna',
]);
src/Carbon/Lang/kln.php 0000644 00000002372 14753612052 0010726 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['krn', 'koosk'],
'weekdays' => ['Kotisap', 'Kotaai', 'Koaeng’', 'Kosomok', 'Koang’wan', 'Komuut', 'Kolo'],
'weekdays_short' => ['Kts', 'Kot', 'Koo', 'Kos', 'Koa', 'Kom', 'Kol'],
'weekdays_min' => ['Kts', 'Kot', 'Koo', 'Kos', 'Koa', 'Kom', 'Kol'],
'months' => ['Mulgul', 'Ng’atyaato', 'Kiptaamo', 'Iwootkuut', 'Mamuut', 'Paagi', 'Ng’eiyeet', 'Rooptui', 'Bureet', 'Epeeso', 'Kipsuunde ne taai', 'Kipsuunde nebo aeng’'],
'months_short' => ['Mul', 'Ngat', 'Taa', 'Iwo', 'Mam', 'Paa', 'Nge', 'Roo', 'Bur', 'Epe', 'Kpt', 'Kpa'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'year' => ':count maghatiat', // less reliable
'y' => ':count maghatiat', // less reliable
'a_year' => ':count maghatiat', // less reliable
]);
src/Carbon/Lang/km.php 0000644 00000006303 14753612052 0010547 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kruy Vanna
* - Sereysethy Touch
* - JD Isaacks
* - Sovichet Tep
*/
return [
'year' => '{1}មួយឆ្នាំ|]1,Inf[:count ឆ្នាំ',
'y' => ':count ឆ្នាំ',
'month' => '{1}មួយខែ|]1,Inf[:count ខែ',
'm' => ':count ខែ',
'week' => ':count សប្ដាហ៍',
'w' => ':count សប្ដាហ៍',
'day' => '{1}មួយថ្ងៃ|]1,Inf[:count ថ្ងៃ',
'd' => ':count ថ្ងៃ',
'hour' => '{1}មួយម៉ោង|]1,Inf[:count ម៉ោង',
'h' => ':count ម៉ោង',
'minute' => '{1}មួយនាទី|]1,Inf[:count នាទី',
'min' => ':count នាទី',
'second' => '{1}ប៉ុន្មានវិនាទី|]1,Inf[:count វិនាទី',
's' => ':count វិនាទី',
'ago' => ':timeមុន',
'from_now' => ':timeទៀត',
'after' => 'នៅក្រោយ :time',
'before' => 'នៅមុន :time',
'diff_now' => 'ឥឡូវ',
'diff_today' => 'ថ្ងៃនេះ',
'diff_today_regexp' => 'ថ្ងៃនេះ(?:\\s+ម៉ោង)?',
'diff_yesterday' => 'ម្សិលមិញ',
'diff_yesterday_regexp' => 'ម្សិលមិញ(?:\\s+ម៉ោង)?',
'diff_tomorrow' => 'ថ្ងៃស្អែក',
'diff_tomorrow_regexp' => 'ស្អែក(?:\\s+ម៉ោង)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[ថ្ងៃនេះ ម៉ោង] LT',
'nextDay' => '[ស្អែក ម៉ោង] LT',
'nextWeek' => 'dddd [ម៉ោង] LT',
'lastDay' => '[ម្សិលមិញ ម៉ោង] LT',
'lastWeek' => 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',
'sameElse' => 'L',
],
'ordinal' => 'ទី:number',
'meridiem' => ['ព្រឹក', 'ល្ងាច'],
'months' => ['មករា', 'កុម្ភៈ', 'មីនា', 'មេសា', 'ឧសភា', 'មិថុនា', 'កក្កដា', 'សីហា', 'កញ្ញា', 'តុលា', 'វិច្ឆិកា', 'ធ្នូ'],
'months_short' => ['មករា', 'កុម្ភៈ', 'មីនា', 'មេសា', 'ឧសភា', 'មិថុនា', 'កក្កដា', 'សីហា', 'កញ្ញា', 'តុលា', 'វិច្ឆិកា', 'ធ្នូ'],
'weekdays' => ['អាទិត្យ', 'ច័ន្ទ', 'អង្គារ', 'ពុធ', 'ព្រហស្បតិ៍', 'សុក្រ', 'សៅរ៍'],
'weekdays_short' => ['អា', 'ច', 'អ', 'ព', 'ព្រ', 'សុ', 'ស'],
'weekdays_min' => ['អា', 'ច', 'អ', 'ព', 'ព្រ', 'សុ', 'ស'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', 'និង '],
];
src/Carbon/Lang/km_KH.php 0000644 00000000413 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/km.php';
src/Carbon/Lang/kn.php 0000644 00000006131 14753612052 0010547 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - MOHAN M U
* - François B
* - rajeevnaikte
*/
return [
'year' => '{1}ಒಂದು ವರ್ಷ|]1,Inf[:count ವರ್ಷ',
'month' => '{1}ಒಂದು ತಿಂಗಳು|]1,Inf[:count ತಿಂಗಳು',
'week' => '{1}ಒಂದು ವಾರ|]1,Inf[:count ವಾರಗಳು',
'day' => '{1}ಒಂದು ದಿನ|]1,Inf[:count ದಿನ',
'hour' => '{1}ಒಂದು ಗಂಟೆ|]1,Inf[:count ಗಂಟೆ',
'minute' => '{1}ಒಂದು ನಿಮಿಷ|]1,Inf[:count ನಿಮಿಷ',
'second' => '{1}ಕೆಲವು ಕ್ಷಣಗಳು|]1,Inf[:count ಸೆಕೆಂಡುಗಳು',
'ago' => ':time ಹಿಂದೆ',
'from_now' => ':time ನಂತರ',
'diff_now' => 'ಈಗ',
'diff_today' => 'ಇಂದು',
'diff_yesterday' => 'ನಿನ್ನೆ',
'diff_tomorrow' => 'ನಾಳೆ',
'formats' => [
'LT' => 'A h:mm',
'LTS' => 'A h:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm',
],
'calendar' => [
'sameDay' => '[ಇಂದು] LT',
'nextDay' => '[ನಾಳೆ] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[ನಿನ್ನೆ] LT',
'lastWeek' => '[ಕೊನೆಯ] dddd, LT',
'sameElse' => 'L',
],
'ordinal' => ':numberನೇ',
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'ರಾತ್ರಿ';
}
if ($hour < 10) {
return 'ಬೆಳಿಗ್ಗೆ';
}
if ($hour < 17) {
return 'ಮಧ್ಯಾಹ್ನ';
}
if ($hour < 20) {
return 'ಸಂಜೆ';
}
return 'ರಾತ್ರಿ';
},
'months' => ['ಜನವರಿ', 'ಫೆಬ್ರವರಿ', 'ಮಾರ್ಚ್', 'ಏಪ್ರಿಲ್', 'ಮೇ', 'ಜೂನ್', 'ಜುಲೈ', 'ಆಗಸ್ಟ್', 'ಸೆಪ್ಟೆಂಬರ್', 'ಅಕ್ಟೋಬರ್', 'ನವೆಂಬರ್', 'ಡಿಸೆಂಬರ್'],
'months_short' => ['ಜನ', 'ಫೆಬ್ರ', 'ಮಾರ್ಚ್', 'ಏಪ್ರಿಲ್', 'ಮೇ', 'ಜೂನ್', 'ಜುಲೈ', 'ಆಗಸ್ಟ್', 'ಸೆಪ್ಟೆಂ', 'ಅಕ್ಟೋ', 'ನವೆಂ', 'ಡಿಸೆಂ'],
'weekdays' => ['ಭಾನುವಾರ', 'ಸೋಮವಾರ', 'ಮಂಗಳವಾರ', 'ಬುಧವಾರ', 'ಗುರುವಾರ', 'ಶುಕ್ರವಾರ', 'ಶನಿವಾರ'],
'weekdays_short' => ['ಭಾನು', 'ಸೋಮ', 'ಮಂಗಳ', 'ಬುಧ', 'ಗುರು', 'ಶುಕ್ರ', 'ಶನಿ'],
'weekdays_min' => ['ಭಾ', 'ಸೋ', 'ಮಂ', 'ಬು', 'ಗು', 'ಶು', 'ಶ'],
'list' => ', ',
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'weekend' => [0, 0],
];
src/Carbon/Lang/kn_IN.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/kn.php';
src/Carbon/Lang/ko.php 0000644 00000005130 14753612052 0010546 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kunal Marwaha
* - FourwingsY
* - François B
* - Jason Katz-Brown
* - Seokjun Kim
* - Junho Kim
* - JD Isaacks
* - Juwon Kim
*/
return [
'year' => ':count년',
'a_year' => '{1}일년|]1,Inf[:count년',
'y' => ':count년',
'month' => ':count개월',
'a_month' => '{1}한달|]1,Inf[:count개월',
'm' => ':count개월',
'week' => ':count주',
'a_week' => '{1}일주일|]1,Inf[:count 주',
'w' => ':count주일',
'day' => ':count일',
'a_day' => '{1}하루|]1,Inf[:count일',
'd' => ':count일',
'hour' => ':count시간',
'a_hour' => '{1}한시간|]1,Inf[:count시간',
'h' => ':count시간',
'minute' => ':count분',
'a_minute' => '{1}일분|]1,Inf[:count분',
'min' => ':count분',
'second' => ':count초',
'a_second' => '{1}몇초|]1,Inf[:count초',
's' => ':count초',
'ago' => ':time 전',
'from_now' => ':time 후',
'after' => ':time 후',
'before' => ':time 전',
'diff_now' => '지금',
'diff_today' => '오늘',
'diff_yesterday' => '어제',
'diff_tomorrow' => '내일',
'formats' => [
'LT' => 'A h:mm',
'LTS' => 'A h:mm:ss',
'L' => 'YYYY.MM.DD.',
'LL' => 'YYYY년 MMMM D일',
'LLL' => 'YYYY년 MMMM D일 A h:mm',
'LLLL' => 'YYYY년 MMMM D일 dddd A h:mm',
],
'calendar' => [
'sameDay' => '오늘 LT',
'nextDay' => '내일 LT',
'nextWeek' => 'dddd LT',
'lastDay' => '어제 LT',
'lastWeek' => '지난주 dddd LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return match ($period) {
'd', 'D', 'DDD' => $number.'일',
'M' => $number.'월',
'w', 'W' => $number.'주',
default => $number,
};
},
'meridiem' => ['오전', '오후'],
'months' => ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
'months_short' => ['1월', '2월', '3월', '4월', '5월', '6월', '7월', '8월', '9월', '10월', '11월', '12월'],
'weekdays' => ['일요일', '월요일', '화요일', '수요일', '목요일', '금요일', '토요일'],
'weekdays_short' => ['일', '월', '화', '수', '목', '금', '토'],
'weekdays_min' => ['일', '월', '화', '수', '목', '금', '토'],
'list' => ' ',
];
src/Carbon/Lang/ko_KP.php 0000644 00000000507 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ko.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/ko_KR.php 0000644 00000000413 14753612052 0011141 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ko.php';
src/Carbon/Lang/kok.php 0000644 00000000517 14753612052 0010725 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/kok_IN.php';
src/Carbon/Lang/kok_IN.php 0000644 00000005256 14753612052 0011320 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat, Pune bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D-M-YY',
],
'months' => ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ओगस्ट', 'सेप्टेंबर', 'ओक्टोबर', 'नोव्हेंबर', 'डिसेंबर'],
'months_short' => ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ओगस्ट', 'सेप्टेंबर', 'ओक्टोबर', 'नोव्हेंबर', 'डिसेंबर'],
'weekdays' => ['आयतार', 'सोमार', 'मंगळवार', 'बुधवार', 'बेरेसतार', 'शुकरार', 'शेनवार'],
'weekdays_short' => ['आयतार', 'सोमार', 'मंगळवार', 'बुधवार', 'बेरेसतार', 'शुकरार', 'शेनवार'],
'weekdays_min' => ['आयतार', 'सोमार', 'मंगळवार', 'बुधवार', 'बेरेसतार', 'शुकरार', 'शेनवार'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['म.पू.', 'म.नं.'],
'year' => ':count वैशाकु', // less reliable
'y' => ':count वैशाकु', // less reliable
'a_year' => ':count वैशाकु', // less reliable
'week' => ':count आदित्यवार', // less reliable
'w' => ':count आदित्यवार', // less reliable
'a_week' => ':count आदित्यवार', // less reliable
'minute' => ':count नोंद', // less reliable
'min' => ':count नोंद', // less reliable
'a_minute' => ':count नोंद', // less reliable
'second' => ':count तेंको', // less reliable
's' => ':count तेंको', // less reliable
'a_second' => ':count तेंको', // less reliable
'month' => ':count मैनो',
'm' => ':count मैनो',
'a_month' => ':count मैनो',
'day' => ':count दिवसु',
'd' => ':count दिवसु',
'a_day' => ':count दिवसु',
'hour' => ':count घंते',
'h' => ':count घंते',
'a_hour' => ':count घंते',
]);
src/Carbon/Lang/ks.php 0000644 00000000516 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ks_IN.php';
src/Carbon/Lang/ks_IN.php 0000644 00000004352 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat, Pune bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'M/D/YY',
],
'months' => ['جنؤری', 'فرؤری', 'مارٕچ', 'اپریل', 'میٔ', 'جوٗن', 'جوٗلایی', 'اگست', 'ستمبر', 'اکتوٗبر', 'نومبر', 'دسمبر'],
'months_short' => ['جنؤری', 'فرؤری', 'مارٕچ', 'اپریل', 'میٔ', 'جوٗن', 'جوٗلایی', 'اگست', 'ستمبر', 'اکتوٗبر', 'نومبر', 'دسمبر'],
'weekdays' => ['آتهوار', 'ژءندروار', 'بوءںوار', 'بودهوار', 'برىسوار', 'جمع', 'بٹوار'],
'weekdays_short' => ['آتهوار', 'ژءنتروار', 'بوءںوار', 'بودهوار', 'برىسوار', 'جمع', 'بٹوار'],
'weekdays_min' => ['آتهوار', 'ژءنتروار', 'بوءںوار', 'بودهوار', 'برىسوار', 'جمع', 'بٹوار'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['دوپھربرونھ', 'دوپھرپتھ'],
'year' => ':count آب', // less reliable
'y' => ':count آب', // less reliable
'a_year' => ':count آب', // less reliable
'month' => ':count रान्', // less reliable
'm' => ':count रान्', // less reliable
'a_month' => ':count रान्', // less reliable
'week' => ':count آتھٕوار', // less reliable
'w' => ':count آتھٕوار', // less reliable
'a_week' => ':count آتھٕوار', // less reliable
'hour' => ':count سۄن', // less reliable
'h' => ':count سۄن', // less reliable
'a_hour' => ':count سۄن', // less reliable
'minute' => ':count فَن', // less reliable
'min' => ':count فَن', // less reliable
'a_minute' => ':count فَن', // less reliable
'second' => ':count दोʼयुम', // less reliable
's' => ':count दोʼयुम', // less reliable
'a_second' => ':count दोʼयुम', // less reliable
]);
src/Carbon/Lang/ks_IN@devanagari.php 0000644 00000003013 14753612052 0013260 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - ks-gnome-trans-commits@lists.code.indlinux.net
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'M/D/YY',
],
'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'weekdays' => ['आथवार', 'चॅ़दुरवार', 'बोमवार', 'ब्वदवार', 'ब्रसवार', 'शोकुरवार', 'बटुवार'],
'weekdays_short' => ['आथ ', 'चॅ़दुर', 'बोम', 'ब्वद', 'ब्रस', 'शोकुर', 'बटु'],
'weekdays_min' => ['आथ ', 'चॅ़दुर', 'बोम', 'ब्वद', 'ब्रस', 'शोकुर', 'बटु'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
]);
src/Carbon/Lang/ksb.php 0000644 00000002100 14753612052 0010706 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['makeo', 'nyiaghuo'],
'weekdays' => ['Jumaapii', 'Jumaatatu', 'Jumaane', 'Jumaatano', 'Alhamisi', 'Ijumaa', 'Jumaamosi'],
'weekdays_short' => ['Jpi', 'Jtt', 'Jmn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'weekdays_min' => ['Jpi', 'Jtt', 'Jmn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'months' => ['Januali', 'Febluali', 'Machi', 'Aplili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/ksf.php 0000644 00000002405 14753612052 0010722 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['sárúwá', 'cɛɛ́nko'],
'weekdays' => ['sɔ́ndǝ', 'lǝndí', 'maadí', 'mɛkrɛdí', 'jǝǝdí', 'júmbá', 'samdí'],
'weekdays_short' => ['sɔ́n', 'lǝn', 'maa', 'mɛk', 'jǝǝ', 'júm', 'sam'],
'weekdays_min' => ['sɔ́n', 'lǝn', 'maa', 'mɛk', 'jǝǝ', 'júm', 'sam'],
'months' => ['ŋwíí a ntɔ́ntɔ', 'ŋwíí akǝ bɛ́ɛ', 'ŋwíí akǝ ráá', 'ŋwíí akǝ nin', 'ŋwíí akǝ táan', 'ŋwíí akǝ táafɔk', 'ŋwíí akǝ táabɛɛ', 'ŋwíí akǝ táaraa', 'ŋwíí akǝ táanin', 'ŋwíí akǝ ntɛk', 'ŋwíí akǝ ntɛk di bɔ́k', 'ŋwíí akǝ ntɛk di bɛ́ɛ'],
'months_short' => ['ŋ1', 'ŋ2', 'ŋ3', 'ŋ4', 'ŋ5', 'ŋ6', 'ŋ7', 'ŋ8', 'ŋ9', 'ŋ10', 'ŋ11', 'ŋ12'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/ksh.php 0000644 00000003534 14753612052 0010730 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['v.M.', 'n.M.'],
'weekdays' => ['Sunndaach', 'Mohndaach', 'Dinnsdaach', 'Metwoch', 'Dunnersdaach', 'Friidaach', 'Samsdaach'],
'weekdays_short' => ['Su.', 'Mo.', 'Di.', 'Me.', 'Du.', 'Fr.', 'Sa.'],
'weekdays_min' => ['Su', 'Mo', 'Di', 'Me', 'Du', 'Fr', 'Sa'],
'months' => ['Jannewa', 'Fäbrowa', 'Määz', 'Aprell', 'Mai', 'Juuni', 'Juuli', 'Oujoß', 'Septämber', 'Oktohber', 'Novämber', 'Dezämber'],
'months_short' => ['Jan', 'Fäb', 'Mäz', 'Apr', 'Mai', 'Jun', 'Jul', 'Ouj', 'Säp', 'Okt', 'Nov', 'Dez'],
'months_short_standalone' => ['Jan.', 'Fäb.', 'Mäz.', 'Apr.', 'Mai', 'Jun.', 'Jul.', 'Ouj.', 'Säp.', 'Okt.', 'Nov.', 'Dez.'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D. M. YYYY',
'LL' => 'D. MMM. YYYY',
'LLL' => 'D. MMMM YYYY HH:mm',
'LLLL' => 'dddd, [dä] D. MMMM YYYY HH:mm',
],
'year' => ':count Johr',
'y' => ':count Johr',
'a_year' => ':count Johr',
'month' => ':count Moohnd',
'm' => ':count Moohnd',
'a_month' => ':count Moohnd',
'week' => ':count woch',
'w' => ':count woch',
'a_week' => ':count woch',
'day' => ':count Daach',
'd' => ':count Daach',
'a_day' => ':count Daach',
'hour' => ':count Uhr',
'h' => ':count Uhr',
'a_hour' => ':count Uhr',
'minute' => ':count Menutt',
'min' => ':count Menutt',
'a_minute' => ':count Menutt',
'second' => ':count Sekůndt',
's' => ':count Sekůndt',
'a_second' => ':count Sekůndt',
]);
src/Carbon/Lang/ku.php 0000644 00000004030 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Unicode, Inc.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'ago' => 'berî :time',
'from_now' => 'di :time de',
'after' => ':time piştî',
'before' => ':time berê',
'year' => ':count sal',
'a_year' => ':count sal',
'y' => ':count sal',
'year_ago' => ':count salê|:count salan',
'y_ago' => ':count salê|:count salan',
'year_from_now' => 'salekê|:count salan',
'y_from_now' => 'salekê|:count salan',
'month' => ':count meh',
'a_month' => ':count meh',
'm' => ':count meh',
'week' => ':count hefte',
'a_week' => ':count hefte',
'w' => ':count hefte',
'day' => ':count roj',
'a_day' => ':count roj',
'd' => ':count roj',
'hour' => ':count saet',
'a_hour' => ':count saet',
'h' => ':count saet',
'minute' => ':count deqîqe',
'a_minute' => ':count deqîqe',
'min' => ':count deqîqe',
'second' => ':count saniye',
'a_second' => ':count saniye',
's' => ':count saniye',
'months' => ['rêbendanê', 'reşemiyê', 'adarê', 'avrêlê', 'gulanê', 'pûşperê', 'tîrmehê', 'gelawêjê', 'rezberê', 'kewçêrê', 'sermawezê', 'berfanbarê'],
'months_standalone' => ['rêbendan', 'reşemî', 'adar', 'avrêl', 'gulan', 'pûşper', 'tîrmeh', 'gelawêj', 'rezber', 'kewçêr', 'sermawez', 'berfanbar'],
'months_short' => ['rêb', 'reş', 'ada', 'avr', 'gul', 'pûş', 'tîr', 'gel', 'rez', 'kew', 'ser', 'ber'],
'weekdays' => ['yekşem', 'duşem', 'sêşem', 'çarşem', 'pêncşem', 'în', 'şemî'],
'weekdays_short' => ['yş', 'dş', 'sş', 'çş', 'pş', 'în', 'ş'],
'weekdays_min' => ['Y', 'D', 'S', 'Ç', 'P', 'Î', 'Ş'],
'list' => [', ', ' û '],
'ordinal' => ':number',
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/ku_TR.php 0000644 00000000413 14753612052 0011160 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ku.php';
src/Carbon/Lang/kw.php 0000644 00000000516 14753612052 0010561 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/kw_GB.php';
src/Carbon/Lang/kw_GB.php 0000644 00000003221 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Alastair McKinstry bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['mis Genver', 'mis Hwevrer', 'mis Meurth', 'mis Ebrel', 'mis Me', 'mis Metheven', 'mis Gortheren', 'mis Est', 'mis Gwynngala', 'mis Hedra', 'mis Du', 'mis Kevardhu'],
'months_short' => ['Gen', 'Hwe', 'Meu', 'Ebr', 'Me', 'Met', 'Gor', 'Est', 'Gwn', 'Hed', 'Du', 'Kev'],
'weekdays' => ['De Sul', 'De Lun', 'De Merth', 'De Merher', 'De Yow', 'De Gwener', 'De Sadorn'],
'weekdays_short' => ['Sul', 'Lun', 'Mth', 'Mhr', 'Yow', 'Gwe', 'Sad'],
'weekdays_min' => ['Sul', 'Lun', 'Mth', 'Mhr', 'Yow', 'Gwe', 'Sad'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count bledhen',
'y' => ':count bledhen',
'a_year' => ':count bledhen',
'month' => ':count mis',
'm' => ':count mis',
'a_month' => ':count mis',
'week' => ':count seythen',
'w' => ':count seythen',
'a_week' => ':count seythen',
'day' => ':count dydh',
'd' => ':count dydh',
'a_day' => ':count dydh',
'hour' => ':count eur',
'h' => ':count eur',
'a_hour' => ':count eur',
'minute' => ':count mynysen',
'min' => ':count mynysen',
'a_minute' => ':count mynysen',
'second' => ':count pryjwyth',
's' => ':count pryjwyth',
'a_second' => ':count pryjwyth',
]);
src/Carbon/Lang/ky.php 0000644 00000007252 14753612052 0010567 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - acutexyz
* - Josh Soref
* - François B
* - Chyngyz Arystan uulu
* - Chyngyz
* - acutexyz
* - Josh Soref
* - François B
* - Chyngyz Arystan uulu
*/
return [
'year' => ':count жыл',
'a_year' => '{1}бир жыл|:count жыл',
'y' => ':count жыл',
'month' => ':count ай',
'a_month' => '{1}бир ай|:count ай',
'm' => ':count ай',
'week' => ':count апта',
'a_week' => '{1}бир апта|:count апта',
'w' => ':count апт.',
'day' => ':count күн',
'a_day' => '{1}бир күн|:count күн',
'd' => ':count күн',
'hour' => ':count саат',
'a_hour' => '{1}бир саат|:count саат',
'h' => ':count саат.',
'minute' => ':count мүнөт',
'a_minute' => '{1}бир мүнөт|:count мүнөт',
'min' => ':count мүн.',
'second' => ':count секунд',
'a_second' => '{1}бирнече секунд|:count секунд',
's' => ':count сек.',
'ago' => ':time мурун',
'from_now' => ':time ичинде',
'diff_now' => 'азыр',
'diff_today' => 'Бүгүн',
'diff_today_regexp' => 'Бүгүн(?:\\s+саат)?',
'diff_yesterday' => 'кечээ',
'diff_yesterday_regexp' => 'Кече(?:\\s+саат)?',
'diff_tomorrow' => 'эртең',
'diff_tomorrow_regexp' => 'Эртең(?:\\s+саат)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Бүгүн саат] LT',
'nextDay' => '[Эртең саат] LT',
'nextWeek' => 'dddd [саат] LT',
'lastDay' => '[Кече саат] LT',
'lastWeek' => '[Өткен аптанын] dddd [күнү] [саат] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
static $suffixes = [
0 => '-чү',
1 => '-чи',
2 => '-чи',
3 => '-чү',
4 => '-чү',
5 => '-чи',
6 => '-чы',
7 => '-чи',
8 => '-чи',
9 => '-чу',
10 => '-чу',
20 => '-чы',
30 => '-чу',
40 => '-чы',
50 => '-чү',
60 => '-чы',
70 => '-чи',
80 => '-чи',
90 => '-чу',
100 => '-чү',
];
return $number.($suffixes[$number] ?? $suffixes[$number % 10] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
},
'months' => ['январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'],
'months_short' => ['янв', 'фев', 'март', 'апр', 'май', 'июнь', 'июль', 'авг', 'сен', 'окт', 'ноя', 'дек'],
'weekdays' => ['Жекшемби', 'Дүйшөмбү', 'Шейшемби', 'Шаршемби', 'Бейшемби', 'Жума', 'Ишемби'],
'weekdays_short' => ['Жек', 'Дүй', 'Шей', 'Шар', 'Бей', 'Жум', 'Ише'],
'weekdays_min' => ['Жк', 'Дй', 'Шй', 'Шр', 'Бй', 'Жм', 'Иш'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => ' ',
'meridiem' => ['таңкы', 'түштөн кийинки'],
];
src/Carbon/Lang/ky_KG.php 0000644 00000000413 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ky.php';
src/Carbon/Lang/lag.php 0000644 00000002270 14753612052 0010702 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['TOO', 'MUU'],
'weekdays' => ['Jumapíiri', 'Jumatátu', 'Jumaíne', 'Jumatáano', 'Alamíisi', 'Ijumáa', 'Jumamóosi'],
'weekdays_short' => ['Píili', 'Táatu', 'Íne', 'Táano', 'Alh', 'Ijm', 'Móosi'],
'weekdays_min' => ['Píili', 'Táatu', 'Íne', 'Táano', 'Alh', 'Ijm', 'Móosi'],
'months' => ['Kʉfúngatɨ', 'Kʉnaanɨ', 'Kʉkeenda', 'Kwiikumi', 'Kwiinyambála', 'Kwiidwaata', 'Kʉmʉʉnchɨ', 'Kʉvɨɨrɨ', 'Kʉsaatʉ', 'Kwiinyi', 'Kʉsaano', 'Kʉsasatʉ'],
'months_short' => ['Fúngatɨ', 'Naanɨ', 'Keenda', 'Ikúmi', 'Inyambala', 'Idwaata', 'Mʉʉnchɨ', 'Vɨɨrɨ', 'Saatʉ', 'Inyi', 'Saano', 'Sasatʉ'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/lb.php 0000644 00000005566 14753612052 0010547 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Tsutomu Kuroda
* - dan-nl
* - Simon Lelorrain (slelorrain)
*/
use Carbon\CarbonInterface;
return [
'year' => ':count Joer',
'y' => ':countJ',
'month' => ':count Mount|:count Méint',
'm' => ':countMo',
'week' => ':count Woch|:count Wochen',
'w' => ':countWo|:countWo',
'day' => ':count Dag|:count Deeg',
'd' => ':countD',
'hour' => ':count Stonn|:count Stonnen',
'h' => ':countSto',
'minute' => ':count Minutt|:count Minutten',
'min' => ':countM',
'second' => ':count Sekonn|:count Sekonnen',
's' => ':countSek',
'ago' => 'virun :time',
'from_now' => 'an :time',
'before' => ':time virdrun',
'after' => ':time duerno',
'diff_today' => 'Haut',
'diff_yesterday' => 'Gëschter',
'diff_yesterday_regexp' => 'Gëschter(?:\\s+um)?',
'diff_tomorrow' => 'Muer',
'diff_tomorrow_regexp' => 'Muer(?:\\s+um)?',
'diff_today_regexp' => 'Haut(?:\\s+um)?',
'formats' => [
'LT' => 'H:mm [Auer]',
'LTS' => 'H:mm:ss [Auer]',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY H:mm [Auer]',
'LLLL' => 'dddd, D. MMMM YYYY H:mm [Auer]',
],
'calendar' => [
'sameDay' => '[Haut um] LT',
'nextDay' => '[Muer um] LT',
'nextWeek' => 'dddd [um] LT',
'lastDay' => '[Gëschter um] LT',
'lastWeek' => static function (CarbonInterface $date) {
// Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule
return match ($date->dayOfWeek) {
2, 4 => '[Leschten] dddd [um] LT',
default => '[Leschte] dddd [um] LT',
};
},
'sameElse' => 'L',
],
'months' => ['Januar', 'Februar', 'Mäerz', 'Abrëll', 'Mee', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
'months_short' => ['Jan.', 'Febr.', 'Mrz.', 'Abr.', 'Mee', 'Jun.', 'Jul.', 'Aug.', 'Sept.', 'Okt.', 'Nov.', 'Dez.'],
'weekdays' => ['Sonndeg', 'Méindeg', 'Dënschdeg', 'Mëttwoch', 'Donneschdeg', 'Freideg', 'Samschdeg'],
'weekdays_short' => ['So.', 'Mé.', 'Dë.', 'Më.', 'Do.', 'Fr.', 'Sa.'],
'weekdays_min' => ['So', 'Mé', 'Dë', 'Më', 'Do', 'Fr', 'Sa'],
'ordinal' => ':number.',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' an '],
'meridiem' => ['moies', 'mëttes'],
'weekdays_short_standalone' => ['Son', 'Méi', 'Dën', 'Mët', 'Don', 'Fre', 'Sam'],
'months_short_standalone' => ['Jan', 'Feb', 'Mäe', 'Abr', 'Mee', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
];
src/Carbon/Lang/lb_LU.php 0000644 00000000413 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/lb.php';
src/Carbon/Lang/lg.php 0000644 00000000516 14753612052 0010542 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/lg_UG.php';
src/Carbon/Lang/lg_UG.php 0000644 00000003326 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Akademe ya Luganda Kizito Birabwa kompyuta@kizito.uklinux.net
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Janwaliyo', 'Febwaliyo', 'Marisi', 'Apuli', 'Maayi', 'Juuni', 'Julaayi', 'Agusito', 'Sebuttemba', 'Okitobba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apu', 'Maa', 'Juu', 'Jul', 'Agu', 'Seb', 'Oki', 'Nov', 'Des'],
'weekdays' => ['Sabiiti', 'Balaza', 'Lwakubiri', 'Lwakusatu', 'Lwakuna', 'Lwakutaano', 'Lwamukaaga'],
'weekdays_short' => ['Sab', 'Bal', 'Lw2', 'Lw3', 'Lw4', 'Lw5', 'Lw6'],
'weekdays_min' => ['Sab', 'Bal', 'Lw2', 'Lw3', 'Lw4', 'Lw5', 'Lw6'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'month' => ':count njuba', // less reliable
'm' => ':count njuba', // less reliable
'a_month' => ':count njuba', // less reliable
'year' => ':count mwaaka',
'y' => ':count mwaaka',
'a_year' => ':count mwaaka',
'week' => ':count sabbiiti',
'w' => ':count sabbiiti',
'a_week' => ':count sabbiiti',
'day' => ':count lunaku',
'd' => ':count lunaku',
'a_day' => ':count lunaku',
'hour' => 'saawa :count',
'h' => 'saawa :count',
'a_hour' => 'saawa :count',
'minute' => 'ddakiika :count',
'min' => 'ddakiika :count',
'a_minute' => 'ddakiika :count',
'second' => ':count kyʼokubiri',
's' => ':count kyʼokubiri',
'a_second' => ':count kyʼokubiri',
]);
src/Carbon/Lang/li.php 0000644 00000000516 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/li_NL.php';
src/Carbon/Lang/li_NL.php 0000644 00000003340 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandriva.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['jannewarie', 'fibberwarie', 'miert', 'eprèl', 'meij', 'junie', 'julie', 'augustus', 'september', 'oktober', 'november', 'desember'],
'months_short' => ['jan', 'fib', 'mie', 'epr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
'weekdays' => ['zóndig', 'maondig', 'daensdig', 'goonsdig', 'dónderdig', 'vriedig', 'zaoterdig'],
'weekdays_short' => ['zón', 'mao', 'dae', 'goo', 'dón', 'vri', 'zao'],
'weekdays_min' => ['zón', 'mao', 'dae', 'goo', 'dón', 'vri', 'zao'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'minute' => ':count momênt', // less reliable
'min' => ':count momênt', // less reliable
'a_minute' => ':count momênt', // less reliable
'year' => ':count jaor',
'y' => ':count jaor',
'a_year' => ':count jaor',
'month' => ':count maond',
'm' => ':count maond',
'a_month' => ':count maond',
'week' => ':count waek',
'w' => ':count waek',
'a_week' => ':count waek',
'day' => ':count daag',
'd' => ':count daag',
'a_day' => ':count daag',
'hour' => ':count oer',
'h' => ':count oer',
'a_hour' => ':count oer',
'second' => ':count Secónd',
's' => ':count Secónd',
'a_second' => ':count Secónd',
]);
src/Carbon/Lang/lij.php 0000644 00000000517 14753612052 0010717 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/lij_IT.php';
src/Carbon/Lang/lij_IT.php 0000644 00000003350 14753612052 0011311 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Gastaldi alessio.gastaldi@libero.it
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['zenâ', 'fevrâ', 'marzo', 'avrî', 'mazzo', 'zûgno', 'lûggio', 'agosto', 'settembre', 'ottobre', 'novembre', 'dixembre'],
'months_short' => ['zen', 'fev', 'mar', 'arv', 'maz', 'zûg', 'lûg', 'ago', 'set', 'ött', 'nov', 'dix'],
'weekdays' => ['domenega', 'lûnedì', 'martedì', 'mercUrdì', 'zêggia', 'venardì', 'sabbo'],
'weekdays_short' => ['dom', 'lûn', 'mar', 'mer', 'zêu', 'ven', 'sab'],
'weekdays_min' => ['dom', 'lûn', 'mar', 'mer', 'zêu', 'ven', 'sab'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count etæ', // less reliable
'y' => ':count etæ', // less reliable
'a_year' => ':count etæ', // less reliable
'month' => ':count meize',
'm' => ':count meize',
'a_month' => ':count meize',
'week' => ':count settemannha',
'w' => ':count settemannha',
'a_week' => ':count settemannha',
'day' => ':count giorno',
'd' => ':count giorno',
'a_day' => ':count giorno',
'hour' => ':count reléuio', // less reliable
'h' => ':count reléuio', // less reliable
'a_hour' => ':count reléuio', // less reliable
'minute' => ':count menûo',
'min' => ':count menûo',
'a_minute' => ':count menûo',
'second' => ':count segondo',
's' => ':count segondo',
'a_second' => ':count segondo',
]);
src/Carbon/Lang/lkt.php 0000644 00000002374 14753612052 0010736 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'month' => ':count haŋwí', // less reliable
'm' => ':count haŋwí', // less reliable
'a_month' => ':count haŋwí', // less reliable
'week' => ':count šakówiŋ', // less reliable
'w' => ':count šakówiŋ', // less reliable
'a_week' => ':count šakówiŋ', // less reliable
'hour' => ':count maza škaŋškaŋ', // less reliable
'h' => ':count maza škaŋškaŋ', // less reliable
'a_hour' => ':count maza škaŋškaŋ', // less reliable
'minute' => ':count číkʼala', // less reliable
'min' => ':count číkʼala', // less reliable
'a_minute' => ':count číkʼala', // less reliable
'year' => ':count waníyetu',
'y' => ':count waníyetu',
'a_year' => ':count waníyetu',
'day' => ':count aŋpétu',
'd' => ':count aŋpétu',
'a_day' => ':count aŋpétu',
'second' => ':count icinuŋpa',
's' => ':count icinuŋpa',
'a_second' => ':count icinuŋpa',
]);
src/Carbon/Lang/ln.php 0000644 00000004000 14753612052 0010541 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ubuntu René Manassé GALEKWA renemanasse@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'months' => ['sánzá ya yambo', 'sánzá ya míbalé', 'sánzá ya mísáto', 'sánzá ya mínei', 'sánzá ya mítáno', 'sánzá ya motóbá', 'sánzá ya nsambo', 'sánzá ya mwambe', 'sánzá ya libwa', 'sánzá ya zómi', 'sánzá ya zómi na mɔ̌kɔ́', 'sánzá ya zómi na míbalé'],
'months_short' => ['yan', 'fbl', 'msi', 'apl', 'mai', 'yun', 'yul', 'agt', 'stb', 'ɔtb', 'nvb', 'dsb'],
'weekdays' => ['Lomíngo', 'Mosálá mɔ̌kɔ́', 'Misálá míbalé', 'Misálá mísáto', 'Misálá mínei', 'Misálá mítáno', 'Mpɔ́sɔ'],
'weekdays_short' => ['m1.', 'm2.', 'm3.', 'm4.', 'm5.', 'm6.', 'm7.'],
'weekdays_min' => ['m1.', 'm2.', 'm3.', 'm4.', 'm5.', 'm6.', 'm7.'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => 'mbula :count',
'y' => 'mbula :count',
'a_year' => 'mbula :count',
'month' => 'sánzá :count',
'm' => 'sánzá :count',
'a_month' => 'sánzá :count',
'week' => 'mpɔ́sɔ :count',
'w' => 'mpɔ́sɔ :count',
'a_week' => 'mpɔ́sɔ :count',
'day' => 'mokɔlɔ :count',
'd' => 'mokɔlɔ :count',
'a_day' => 'mokɔlɔ :count',
'hour' => 'ngonga :count',
'h' => 'ngonga :count',
'a_hour' => 'ngonga :count',
'minute' => 'miniti :count',
'min' => 'miniti :count',
'a_minute' => 'miniti :count',
'second' => 'segɔnde :count',
's' => 'segɔnde :count',
'a_second' => 'segɔnde :count',
]);
src/Carbon/Lang/ln_AO.php 0000644 00000001216 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ln.php', [
'weekdays' => ['eyenga', 'mokɔlɔ mwa yambo', 'mokɔlɔ mwa míbalé', 'mokɔlɔ mwa mísáto', 'mokɔlɔ ya mínéi', 'mokɔlɔ ya mítáno', 'mpɔ́sɔ'],
'weekdays_short' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
'weekdays_min' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
'meridiem' => ['ntɔ́ngɔ́', 'mpókwa'],
]);
src/Carbon/Lang/ln_CD.php 0000644 00000000527 14753612052 0011121 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ubuntu René Manassé GALEKWA renemanasse@gmail.com
*/
return require __DIR__.'/ln.php';
src/Carbon/Lang/ln_CF.php 0000644 00000001216 14753612052 0011117 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ln.php', [
'weekdays' => ['eyenga', 'mokɔlɔ mwa yambo', 'mokɔlɔ mwa míbalé', 'mokɔlɔ mwa mísáto', 'mokɔlɔ ya mínéi', 'mokɔlɔ ya mítáno', 'mpɔ́sɔ'],
'weekdays_short' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
'weekdays_min' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
'meridiem' => ['ntɔ́ngɔ́', 'mpókwa'],
]);
src/Carbon/Lang/ln_CG.php 0000644 00000001216 14753612052 0011120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ln.php', [
'weekdays' => ['eyenga', 'mokɔlɔ mwa yambo', 'mokɔlɔ mwa míbalé', 'mokɔlɔ mwa mísáto', 'mokɔlɔ ya mínéi', 'mokɔlɔ ya mítáno', 'mpɔ́sɔ'],
'weekdays_short' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
'weekdays_min' => ['eye', 'ybo', 'mbl', 'mst', 'min', 'mtn', 'mps'],
'meridiem' => ['ntɔ́ngɔ́', 'mpókwa'],
]);
src/Carbon/Lang/lo.php 0000644 00000005322 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - ryanhart2
*/
return [
'year' => ':count ປີ',
'y' => ':count ປີ',
'month' => ':count ເດືອນ',
'm' => ':count ດ. ',
'week' => ':count ອາທິດ',
'w' => ':count ອທ. ',
'day' => ':count ມື້',
'd' => ':count ມື້',
'hour' => ':count ຊົ່ວໂມງ',
'h' => ':count ຊມ. ',
'minute' => ':count ນາທີ',
'min' => ':count ນທ. ',
'second' => '{1}ບໍ່ເທົ່າໃດວິນາທີ|]1,Inf[:count ວິນາທີ',
's' => ':count ວິ. ',
'ago' => ':timeຜ່ານມາ',
'from_now' => 'ອີກ :time',
'diff_now' => 'ຕອນນີ້',
'diff_today' => 'ມື້ນີ້ເວລາ',
'diff_yesterday' => 'ມື້ວານນີ້ເວລາ',
'diff_tomorrow' => 'ມື້ອື່ນເວລາ',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'ວັນdddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[ມື້ນີ້ເວລາ] LT',
'nextDay' => '[ມື້ອື່ນເວລາ] LT',
'nextWeek' => '[ວັນ]dddd[ໜ້າເວລາ] LT',
'lastDay' => '[ມື້ວານນີ້ເວລາ] LT',
'lastWeek' => '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT',
'sameElse' => 'L',
],
'ordinal' => 'ທີ່:number',
'meridiem' => ['ຕອນເຊົ້າ', 'ຕອນແລງ'],
'months' => ['ມັງກອນ', 'ກຸມພາ', 'ມີນາ', 'ເມສາ', 'ພຶດສະພາ', 'ມິຖຸນາ', 'ກໍລະກົດ', 'ສິງຫາ', 'ກັນຍາ', 'ຕຸລາ', 'ພະຈິກ', 'ທັນວາ'],
'months_short' => ['ມັງກອນ', 'ກຸມພາ', 'ມີນາ', 'ເມສາ', 'ພຶດສະພາ', 'ມິຖຸນາ', 'ກໍລະກົດ', 'ສິງຫາ', 'ກັນຍາ', 'ຕຸລາ', 'ພະຈິກ', 'ທັນວາ'],
'weekdays' => ['ອາທິດ', 'ຈັນ', 'ອັງຄານ', 'ພຸດ', 'ພະຫັດ', 'ສຸກ', 'ເສົາ'],
'weekdays_short' => ['ທິດ', 'ຈັນ', 'ອັງຄານ', 'ພຸດ', 'ພະຫັດ', 'ສຸກ', 'ເສົາ'],
'weekdays_min' => ['ທ', 'ຈ', 'ອຄ', 'ພ', 'ພຫ', 'ສກ', 'ສ'],
'list' => [', ', 'ແລະ '],
];
src/Carbon/Lang/lo_LA.php 0000644 00000000413 14753612052 0011122 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/lo.php';
src/Carbon/Lang/lrc.php 0000644 00000000735 14753612052 0010723 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'minute' => ':count هنر', // less reliable
'min' => ':count هنر', // less reliable
'a_minute' => ':count هنر', // less reliable
]);
src/Carbon/Lang/lrc_IQ.php 0000644 00000000414 14753612052 0011306 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/lrc.php';
src/Carbon/Lang/lt.php 0000644 00000011763 14753612052 0010565 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Tsutomu Kuroda
* - tjku
* - valdas406
* - Justas Palumickas
* - Max Melentiev
* - Andrius Janauskas
* - Juanito Fatas
* - Akira Matsuda
* - Christopher Dell
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Nicolás Hock Isaza
* - Laurynas Butkus
* - Sven Fuchs
* - Dominykas Tijūnaitis
* - Justinas Bolys
* - Ričardas
* - Kirill Chalkin
* - Rolandas
* - Justinas (Gamesh)
*/
return [
'year' => ':count metai|:count metai|:count metų',
'y' => ':count m.',
'month' => ':count mėnuo|:count mėnesiai|:count mėnesį',
'm' => ':count mėn.',
'week' => ':count savaitė|:count savaitės|:count savaitę',
'w' => ':count sav.',
'day' => ':count diena|:count dienos|:count dienų',
'd' => ':count d.',
'hour' => ':count valanda|:count valandos|:count valandų',
'h' => ':count val.',
'minute' => ':count minutė|:count minutės|:count minutę',
'min' => ':count min.',
'second' => ':count sekundė|:count sekundės|:count sekundžių',
's' => ':count sek.',
'year_ago' => ':count metus|:count metus|:count metų',
'month_ago' => ':count mėnesį|:count mėnesius|:count mėnesių',
'week_ago' => ':count savaitę|:count savaites|:count savaičių',
'day_ago' => ':count dieną|:count dienas|:count dienų',
'hour_ago' => ':count valandą|:count valandas|:count valandų',
'minute_ago' => ':count minutę|:count minutes|:count minučių',
'second_ago' => ':count sekundę|:count sekundes|:count sekundžių',
'year_from_now' => ':count metų',
'month_from_now' => ':count mėnesio|:count mėnesių|:count mėnesių',
'week_from_now' => ':count savaitės|:count savaičių|:count savaičių',
'day_from_now' => ':count dienos|:count dienų|:count dienų',
'hour_from_now' => ':count valandos|:count valandų|:count valandų',
'minute_from_now' => ':count minutės|:count minučių|:count minučių',
'second_from_now' => ':count sekundės|:count sekundžių|:count sekundžių',
'year_after' => ':count metų',
'month_after' => ':count mėnesio|:count mėnesių|:count mėnesių',
'week_after' => ':count savaitės|:count savaičių|:count savaičių',
'day_after' => ':count dienos|:count dienų|:count dienų',
'hour_after' => ':count valandos|:count valandų|:count valandų',
'minute_after' => ':count minutės|:count minučių|:count minučių',
'second_after' => ':count sekundės|:count sekundžių|:count sekundžių',
'ago' => 'prieš :time',
'from_now' => ':time nuo dabar',
'after' => 'po :time',
'before' => 'už :time',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'diff_now' => 'ką tik',
'diff_today' => 'Šiandien',
'diff_yesterday' => 'vakar',
'diff_yesterday_regexp' => 'Vakar',
'diff_tomorrow' => 'rytoj',
'diff_tomorrow_regexp' => 'Rytoj',
'diff_before_yesterday' => 'užvakar',
'diff_after_tomorrow' => 'poryt',
'period_recurrences' => 'kartą|:count kartų',
'period_interval' => 'kiekvieną :interval',
'period_start_date' => 'nuo :date',
'period_end_date' => 'iki :date',
'months' => ['sausio', 'vasario', 'kovo', 'balandžio', 'gegužės', 'birželio', 'liepos', 'rugpjūčio', 'rugsėjo', 'spalio', 'lapkričio', 'gruodžio'],
'months_standalone' => ['sausis', 'vasaris', 'kovas', 'balandis', 'gegužė', 'birželis', 'liepa', 'rugpjūtis', 'rugsėjis', 'spalis', 'lapkritis', 'gruodis'],
'months_regexp' => '/(L{2,4}|D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?)/',
'months_short' => ['sau', 'vas', 'kov', 'bal', 'geg', 'bir', 'lie', 'rgp', 'rgs', 'spa', 'lap', 'gru'],
'weekdays' => ['sekmadienį', 'pirmadienį', 'antradienį', 'trečiadienį', 'ketvirtadienį', 'penktadienį', 'šeštadienį'],
'weekdays_standalone' => ['sekmadienis', 'pirmadienis', 'antradienis', 'trečiadienis', 'ketvirtadienis', 'penktadienis', 'šeštadienis'],
'weekdays_short' => ['sek', 'pir', 'ant', 'tre', 'ket', 'pen', 'šeš'],
'weekdays_min' => ['se', 'pi', 'an', 'tr', 'ke', 'pe', 'še'],
'list' => [', ', ' ir '],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'MMMM DD, YYYY',
'LLL' => 'DD MMM HH:mm',
'LLLL' => 'MMMM DD, YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Šiandien] LT',
'nextDay' => '[Rytoj] LT',
'nextWeek' => 'dddd LT',
'lastDay' => '[Vakar] LT',
'lastWeek' => '[Paskutinį] dddd LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
return match ($number) {
0 => '0-is',
3 => '3-ias',
default => "$number-as",
};
},
'meridiem' => ['priešpiet', 'popiet'],
];
src/Carbon/Lang/lt_LT.php 0000644 00000000413 14753612052 0011152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/lt.php';
src/Carbon/Lang/lu.php 0000644 00000002126 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Dinda', 'Dilolo'],
'weekdays' => ['Lumingu', 'Nkodya', 'Ndàayà', 'Ndangù', 'Njòwa', 'Ngòvya', 'Lubingu'],
'weekdays_short' => ['Lum', 'Nko', 'Ndy', 'Ndg', 'Njw', 'Ngv', 'Lub'],
'weekdays_min' => ['Lum', 'Nko', 'Ndy', 'Ndg', 'Njw', 'Ngv', 'Lub'],
'months' => ['Ciongo', 'Lùishi', 'Lusòlo', 'Mùuyà', 'Lumùngùlù', 'Lufuimi', 'Kabàlàshìpù', 'Lùshìkà', 'Lutongolo', 'Lungùdi', 'Kaswèkèsè', 'Ciswà'],
'months_short' => ['Cio', 'Lui', 'Lus', 'Muu', 'Lum', 'Luf', 'Kab', 'Lush', 'Lut', 'Lun', 'Kas', 'Cis'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/luo.php 0000644 00000003475 14753612052 0010746 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['OD', 'OT'],
'weekdays' => ['Jumapil', 'Wuok Tich', 'Tich Ariyo', 'Tich Adek', 'Tich Ang’wen', 'Tich Abich', 'Ngeso'],
'weekdays_short' => ['JMP', 'WUT', 'TAR', 'TAD', 'TAN', 'TAB', 'NGS'],
'weekdays_min' => ['JMP', 'WUT', 'TAR', 'TAD', 'TAN', 'TAB', 'NGS'],
'months' => ['Dwe mar Achiel', 'Dwe mar Ariyo', 'Dwe mar Adek', 'Dwe mar Ang’wen', 'Dwe mar Abich', 'Dwe mar Auchiel', 'Dwe mar Abiriyo', 'Dwe mar Aboro', 'Dwe mar Ochiko', 'Dwe mar Apar', 'Dwe mar gi achiel', 'Dwe mar Apar gi ariyo'],
'months_short' => ['DAC', 'DAR', 'DAD', 'DAN', 'DAH', 'DAU', 'DAO', 'DAB', 'DOC', 'DAP', 'DGI', 'DAG'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'year' => 'higni :count',
'y' => 'higni :count',
'a_year' => ':higni :count',
'month' => 'dweche :count',
'm' => 'dweche :count',
'a_month' => 'dweche :count',
'week' => 'jumbe :count',
'w' => 'jumbe :count',
'a_week' => 'jumbe :count',
'day' => 'ndalo :count',
'd' => 'ndalo :count',
'a_day' => 'ndalo :count',
'hour' => 'seche :count',
'h' => 'seche :count',
'a_hour' => 'seche :count',
'minute' => 'dakika :count',
'min' => 'dakika :count',
'a_minute' => 'dakika :count',
'second' => 'nus dakika :count',
's' => 'nus dakika :count',
'a_second' => 'nus dakika :count',
]);
src/Carbon/Lang/luy.php 0000644 00000004102 14753612052 0010744 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'weekdays' => ['Jumapiri', 'Jumatatu', 'Jumanne', 'Jumatano', 'Murwa wa Kanne', 'Murwa wa Katano', 'Jumamosi'],
'weekdays_short' => ['J2', 'J3', 'J4', 'J5', 'Al', 'Ij', 'J1'],
'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Al', 'Ij', 'J1'],
'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
// Too unreliable
/*
'year' => ':count liliino', // less reliable
'y' => ':count liliino', // less reliable
'a_year' => ':count liliino', // less reliable
'month' => ':count kumwesi', // less reliable
'm' => ':count kumwesi', // less reliable
'a_month' => ':count kumwesi', // less reliable
'week' => ':count olutambi', // less reliable
'w' => ':count olutambi', // less reliable
'a_week' => ':count olutambi', // less reliable
'day' => ':count luno', // less reliable
'd' => ':count luno', // less reliable
'a_day' => ':count luno', // less reliable
'hour' => ':count ekengele', // less reliable
'h' => ':count ekengele', // less reliable
'a_hour' => ':count ekengele', // less reliable
'minute' => ':count omundu', // less reliable
'min' => ':count omundu', // less reliable
'a_minute' => ':count omundu', // less reliable
'second' => ':count liliino', // less reliable
's' => ':count liliino', // less reliable
'a_second' => ':count liliino', // less reliable
*/
]);
src/Carbon/Lang/lv.php 0000644 00000015731 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Carbon\CarbonInterface;
/**
* This file is part of the Carbon package.
*
* (c) Brian Nesbitt
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - pirminis
* - Tsutomu Kuroda
* - tjku
* - Andris Zāģeris
* - Max Melentiev
* - Edgars Beigarts
* - Juanito Fatas
* - Vitauts Stočka
* - Akira Matsuda
* - Christopher Dell
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Kaspars Bankovskis
* - Nicolás Hock Isaza
* - Viesturs Kavacs (Kavacky)
* - zakse
* - Janis Eglitis (janiseglitis)
* - Guntars
* - Juris Sudmalis
*/
$daysOfWeek = ['svētdiena', 'pirmdiena', 'otrdiena', 'trešdiena', 'ceturtdiena', 'piektdiena', 'sestdiena'];
$daysOfWeekLocativum = ['svētdien', 'pirmdien', 'otrdien', 'trešdien', 'ceturtdien', 'piektdien', 'sestdien'];
$transformDiff = static fn (string $input) => strtr($input, [
// Nominative => "pirms/pēc" Dative
'gads' => 'gada',
'gadi' => 'gadiem',
'gadu' => 'gadiem',
'mēnesis' => 'mēneša',
'mēneši' => 'mēnešiem',
'mēnešu' => 'mēnešiem',
'nedēļa' => 'nedēļas',
'nedēļas' => 'nedēļām',
'nedēļu' => 'nedēļām',
'diena' => 'dienas',
'dienas' => 'dienām',
'dienu' => 'dienām',
'stunda' => 'stundas',
'stundas' => 'stundām',
'stundu' => 'stundām',
'minūte' => 'minūtes',
'minūtes' => 'minūtēm',
'minūšu' => 'minūtēm',
'sekunde' => 'sekundes',
'sekundes' => 'sekundēm',
'sekunžu' => 'sekundēm',
]);
return [
'ago' => static fn (string $time) => 'pirms '.$transformDiff($time),
'from_now' => static fn (string $time) => 'pēc '.$transformDiff($time),
'year' => '0 gadu|:count gads|:count gadi',
'y' => ':count g.',
'a_year' => '{1}gads|0 gadu|:count gads|:count gadi',
'month' => '0 mēnešu|:count mēnesis|:count mēneši',
'm' => ':count mēn.',
'a_month' => '{1}mēnesis|0 mēnešu|:count mēnesis|:count mēneši',
'week' => '0 nedēļu|:count nedēļa|:count nedēļas',
'w' => ':count ned.',
'a_week' => '{1}nedēļa|0 nedēļu|:count nedēļa|:count nedēļas',
'day' => '0 dienu|:count diena|:count dienas',
'd' => ':count d.',
'a_day' => '{1}diena|0 dienu|:count diena|:count dienas',
'hour' => '0 stundu|:count stunda|:count stundas',
'h' => ':count st.',
'a_hour' => '{1}stunda|0 stundu|:count stunda|:count stundas',
'minute' => '0 minūšu|:count minūte|:count minūtes',
'min' => ':count min.',
'a_minute' => '{1}minūte|0 minūšu|:count minūte|:count minūtes',
'second' => '0 sekunžu|:count sekunde|:count sekundes',
's' => ':count sek.',
'a_second' => '{1}sekunde|0 sekunžu|:count sekunde|:count sekundes',
'after' => ':time vēlāk',
'year_after' => '0 gadus|:count gadu|:count gadus',
'a_year_after' => '{1}gadu|0 gadus|:count gadu|:count gadus',
'month_after' => '0 mēnešus|:count mēnesi|:count mēnešus',
'a_month_after' => '{1}mēnesi|0 mēnešus|:count mēnesi|:count mēnešus',
'week_after' => '0 nedēļas|:count nedēļu|:count nedēļas',
'a_week_after' => '{1}nedēļu|0 nedēļas|:count nedēļu|:count nedēļas',
'day_after' => '0 dienas|:count dienu|:count dienas',
'a_day_after' => '{1}dienu|0 dienas|:count dienu|:count dienas',
'hour_after' => '0 stundas|:count stundu|:count stundas',
'a_hour_after' => '{1}stundu|0 stundas|:count stundu|:count stundas',
'minute_after' => '0 minūtes|:count minūti|:count minūtes',
'a_minute_after' => '{1}minūti|0 minūtes|:count minūti|:count minūtes',
'second_after' => '0 sekundes|:count sekundi|:count sekundes',
'a_second_after' => '{1}sekundi|0 sekundes|:count sekundi|:count sekundes',
'before' => ':time agrāk',
'year_before' => '0 gadus|:count gadu|:count gadus',
'a_year_before' => '{1}gadu|0 gadus|:count gadu|:count gadus',
'month_before' => '0 mēnešus|:count mēnesi|:count mēnešus',
'a_month_before' => '{1}mēnesi|0 mēnešus|:count mēnesi|:count mēnešus',
'week_before' => '0 nedēļas|:count nedēļu|:count nedēļas',
'a_week_before' => '{1}nedēļu|0 nedēļas|:count nedēļu|:count nedēļas',
'day_before' => '0 dienas|:count dienu|:count dienas',
'a_day_before' => '{1}dienu|0 dienas|:count dienu|:count dienas',
'hour_before' => '0 stundas|:count stundu|:count stundas',
'a_hour_before' => '{1}stundu|0 stundas|:count stundu|:count stundas',
'minute_before' => '0 minūtes|:count minūti|:count minūtes',
'a_minute_before' => '{1}minūti|0 minūtes|:count minūti|:count minūtes',
'second_before' => '0 sekundes|:count sekundi|:count sekundes',
'a_second_before' => '{1}sekundi|0 sekundes|:count sekundi|:count sekundes',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' un '],
'diff_now' => 'tagad',
'diff_today' => 'šodien',
'diff_yesterday' => 'vakar',
'diff_before_yesterday' => 'aizvakar',
'diff_tomorrow' => 'rīt',
'diff_after_tomorrow' => 'parīt',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY.',
'LL' => 'YYYY. [gada] D. MMMM',
'LLL' => 'DD.MM.YYYY., HH:mm',
'LLLL' => 'YYYY. [gada] D. MMMM, HH:mm',
],
'calendar' => [
'sameDay' => '[šodien] [plkst.] LT',
'nextDay' => '[rīt] [plkst.] LT',
'nextWeek' => static function (CarbonInterface $current, CarbonInterface $other) use ($daysOfWeekLocativum) {
if ($current->week !== $other->week) {
return '[nākošo] ['.$daysOfWeekLocativum[$current->dayOfWeek].'] [plkst.] LT';
}
return '['.$daysOfWeekLocativum[$current->dayOfWeek].'] [plkst.] LT';
},
'lastDay' => '[vakar] [plkst.] LT',
'lastWeek' => static function (CarbonInterface $current) use ($daysOfWeekLocativum) {
return '[pagājušo] ['.$daysOfWeekLocativum[$current->dayOfWeek].'] [plkst.] LT';
},
'sameElse' => 'L',
],
'weekdays' => $daysOfWeek,
'weekdays_short' => ['Sv.', 'P.', 'O.', 'T.', 'C.', 'Pk.', 'S.'],
'weekdays_min' => ['Sv.', 'P.', 'O.', 'T.', 'C.', 'Pk.', 'S.'],
'months' => ['janvāris', 'februāris', 'marts', 'aprīlis', 'maijs', 'jūnijs', 'jūlijs', 'augusts', 'septembris', 'oktobris', 'novembris', 'decembris'],
'months_standalone' => ['janvārī', 'februārī', 'martā', 'aprīlī', 'maijā', 'jūnijā', 'jūlijā', 'augustā', 'septembrī', 'oktobrī', 'novembrī', 'decembrī'],
'months_short' => ['janv.', 'febr.', 'martā', 'apr.', 'maijā', 'jūn.', 'jūl.', 'aug.', 'sept.', 'okt.', 'nov.', 'dec.'],
'meridiem' => ['priekšpusdiena', 'pēcpusdiena'],
];
src/Carbon/Lang/lv_LV.php 0000644 00000000413 14753612052 0011156 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/lv.php';
src/Carbon/Lang/lzh.php 0000644 00000000517 14753612052 0010736 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/lzh_TW.php';
src/Carbon/Lang/lzh_TW.php 0000644 00000004252 14753612052 0011350 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'OY[年]MMMMOD[日]',
],
'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'months_short' => [' 一 ', ' 二 ', ' 三 ', ' 四 ', ' 五 ', ' 六 ', ' 七 ', ' 八 ', ' 九 ', ' 十 ', '十一', '十二'],
'weekdays' => ['週日', '週一', '週二', '週三', '週四', '週五', '週六'],
'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['〇', '一', '二', '三', '四', '五', '六', '七', '八', '九', '十', '十一', '十二', '十三', '十四', '十五', '十六', '十七', '十八', '十九', '廿', '廿一', '廿二', '廿三', '廿四', '廿五', '廿六', '廿七', '廿八', '廿九', '卅', '卅一'],
'meridiem' => ['朝', '暮'],
'year' => ':count 夏', // less reliable
'y' => ':count 夏', // less reliable
'a_year' => ':count 夏', // less reliable
'month' => ':count 月', // less reliable
'm' => ':count 月', // less reliable
'a_month' => ':count 月', // less reliable
'hour' => ':count 氧', // less reliable
'h' => ':count 氧', // less reliable
'a_hour' => ':count 氧', // less reliable
'minute' => ':count 點', // less reliable
'min' => ':count 點', // less reliable
'a_minute' => ':count 點', // less reliable
'second' => ':count 楚', // less reliable
's' => ':count 楚', // less reliable
'a_second' => ':count 楚', // less reliable
'week' => ':count 星期',
'w' => ':count 星期',
'a_week' => ':count 星期',
'day' => ':count 日(曆法)',
'd' => ':count 日(曆法)',
'a_day' => ':count 日(曆法)',
]);
src/Carbon/Lang/mag.php 0000644 00000000517 14753612052 0010705 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/mag_IN.php';
src/Carbon/Lang/mag_IN.php 0000644 00000002711 14753612052 0011271 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bhashaghar@googlegroups.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'weekdays' => ['एतवार', 'सोमार', 'मंगर', 'बुध', 'बिफे', 'सूक', 'सनिचर'],
'weekdays_short' => ['एतवार', 'सोमार', 'मंगर', 'बुध', 'बिफे', 'सूक', 'सनिचर'],
'weekdays_min' => ['एतवार', 'सोमार', 'मंगर', 'बुध', 'बिफे', 'सूक', 'सनिचर'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
]);
src/Carbon/Lang/mai.php 0000644 00000000517 14753612052 0010707 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/mai_IN.php';
src/Carbon/Lang/mai_IN.php 0000644 00000004627 14753612052 0011303 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Maithili Computing Research Center, Pune, India rajeshkajha@yahoo.com,akhilesh.k@samusng.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['बैसाख', 'जेठ', 'अषाढ़', 'सावोन', 'भादो', 'आसिन', 'कातिक', 'अगहन', 'पूस', 'माघ', 'फागुन', 'चैति'],
'months_short' => ['बैसाख', 'जेठ', 'अषाढ़', 'सावोन', 'भादो', 'आसिन', 'कातिक', 'अगहन', 'पूस', 'माघ', 'फागुन', 'चैति'],
'weekdays' => ['रविदिन', 'सोमदिन', 'मंगलदिन', 'बुधदिन', 'बृहस्पतीदिन', 'शुक्रदिन', 'शनीदिन'],
'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पती', 'शुक्र', 'शनी'],
'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पती', 'शुक्र', 'शनी'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
'year' => ':count ऋतु', // less reliable
'y' => ':count ऋतु', // less reliable
'a_year' => ':count ऋतु', // less reliable
'month' => ':count महिना',
'm' => ':count महिना',
'a_month' => ':count महिना',
'week' => ':count श्रेणी:क्यालेन्डर', // less reliable
'w' => ':count श्रेणी:क्यालेन्डर', // less reliable
'a_week' => ':count श्रेणी:क्यालेन्डर', // less reliable
'day' => ':count दिन',
'd' => ':count दिन',
'a_day' => ':count दिन',
'hour' => ':count घण्टा',
'h' => ':count घण्टा',
'a_hour' => ':count घण्टा',
'minute' => ':count समय', // less reliable
'min' => ':count समय', // less reliable
'a_minute' => ':count समय', // less reliable
]);
src/Carbon/Lang/mas.php 0000644 00000003751 14753612052 0010724 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['Ɛnkakɛnyá', 'Ɛndámâ'],
'weekdays' => ['Jumapílí', 'Jumatátu', 'Jumane', 'Jumatánɔ', 'Alaámisi', 'Jumáa', 'Jumamósi'],
'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'months' => ['Oladalʉ́', 'Arát', 'Ɔɛnɨ́ɔɨŋɔk', 'Olodoyíóríê inkókúâ', 'Oloilépūnyīē inkókúâ', 'Kújúɔrɔk', 'Mórusásin', 'Ɔlɔ́ɨ́bɔ́rárɛ', 'Kúshîn', 'Olgísan', 'Pʉshʉ́ka', 'Ntʉ́ŋʉ́s'],
'months_short' => ['Dal', 'Ará', 'Ɔɛn', 'Doy', 'Lép', 'Rok', 'Sás', 'Bɔ́r', 'Kús', 'Gís', 'Shʉ́', 'Ntʉ́'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'year' => ':count olameyu', // less reliable
'y' => ':count olameyu', // less reliable
'a_year' => ':count olameyu', // less reliable
'week' => ':count engolongeare orwiki', // less reliable
'w' => ':count engolongeare orwiki', // less reliable
'a_week' => ':count engolongeare orwiki', // less reliable
'hour' => ':count esahabu', // less reliable
'h' => ':count esahabu', // less reliable
'a_hour' => ':count esahabu', // less reliable
'second' => ':count are', // less reliable
's' => ':count are', // less reliable
'a_second' => ':count are', // less reliable
'month' => ':count olapa',
'm' => ':count olapa',
'a_month' => ':count olapa',
'day' => ':count enkolongʼ',
'd' => ':count enkolongʼ',
'a_day' => ':count enkolongʼ',
]);
src/Carbon/Lang/mas_TZ.php 0000644 00000000510 14753612052 0011327 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/mas.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/mer.php 0000644 00000003211 14753612052 0010716 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['RŨ', 'ŨG'],
'weekdays' => ['Kiumia', 'Muramuko', 'Wairi', 'Wethatu', 'Wena', 'Wetano', 'Jumamosi'],
'weekdays_short' => ['KIU', 'MRA', 'WAI', 'WET', 'WEN', 'WTN', 'JUM'],
'weekdays_min' => ['KIU', 'MRA', 'WAI', 'WET', 'WEN', 'WTN', 'JUM'],
'months' => ['Januarĩ', 'Feburuarĩ', 'Machi', 'Ĩpurũ', 'Mĩĩ', 'Njuni', 'Njuraĩ', 'Agasti', 'Septemba', 'Oktũba', 'Novemba', 'Dicemba'],
'months_short' => ['JAN', 'FEB', 'MAC', 'ĨPU', 'MĨĨ', 'NJU', 'NJR', 'AGA', 'SPT', 'OKT', 'NOV', 'DEC'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'year' => ':count murume', // less reliable
'y' => ':count murume', // less reliable
'a_year' => ':count murume', // less reliable
'month' => ':count muchaara', // less reliable
'm' => ':count muchaara', // less reliable
'a_month' => ':count muchaara', // less reliable
'minute' => ':count monto', // less reliable
'min' => ':count monto', // less reliable
'a_minute' => ':count monto', // less reliable
'second' => ':count gikeno', // less reliable
's' => ':count gikeno', // less reliable
'a_second' => ':count gikeno', // less reliable
]);
src/Carbon/Lang/mfe.php 0000644 00000000517 14753612052 0010710 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/mfe_MU.php';
src/Carbon/Lang/mfe_MU.php 0000644 00000003061 14753612052 0011306 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Samsung Electronics Co., Ltd. akhilesh.k@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['zanvie', 'fevriye', 'mars', 'avril', 'me', 'zin', 'zilye', 'out', 'septam', 'oktob', 'novam', 'desam'],
'months_short' => ['zan', 'fev', 'mar', 'avr', 'me', 'zin', 'zil', 'out', 'sep', 'okt', 'nov', 'des'],
'weekdays' => ['dimans', 'lindi', 'mardi', 'merkredi', 'zedi', 'vandredi', 'samdi'],
'weekdays_short' => ['dim', 'lin', 'mar', 'mer', 'ze', 'van', 'sam'],
'weekdays_min' => ['dim', 'lin', 'mar', 'mer', 'ze', 'van', 'sam'],
'year' => ':count banané',
'y' => ':count banané',
'a_year' => ':count banané',
'month' => ':count mwa',
'm' => ':count mwa',
'a_month' => ':count mwa',
'week' => ':count sémenn',
'w' => ':count sémenn',
'a_week' => ':count sémenn',
'day' => ':count zour',
'd' => ':count zour',
'a_day' => ':count zour',
'hour' => ':count -er-tan',
'h' => ':count -er-tan',
'a_hour' => ':count -er-tan',
'minute' => ':count minitt',
'min' => ':count minitt',
'a_minute' => ':count minitt',
'second' => ':count déziém',
's' => ':count déziém',
'a_second' => ':count déziém',
]);
src/Carbon/Lang/mg.php 0000644 00000000516 14753612052 0010543 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/mg_MG.php';
src/Carbon/Lang/mg_MG.php 0000644 00000003403 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - The Debian Project modified by GNU//Linux Malagasy Rado Ramarotafika,Do-Risika RAFIEFERANTSIARONJY rado@linuxmg.org,dourix@free.fr
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Janoary', 'Febroary', 'Martsa', 'Aprily', 'Mey', 'Jona', 'Jolay', 'Aogositra', 'Septambra', 'Oktobra', 'Novambra', 'Desambra'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Mey', 'Jon', 'Jol', 'Aog', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['alahady', 'alatsinainy', 'talata', 'alarobia', 'alakamisy', 'zoma', 'sabotsy'],
'weekdays_short' => ['lhd', 'lts', 'tlt', 'lrb', 'lkm', 'zom', 'sab'],
'weekdays_min' => ['lhd', 'lts', 'tlt', 'lrb', 'lkm', 'zom', 'sab'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'minute' => ':count minitra', // less reliable
'min' => ':count minitra', // less reliable
'a_minute' => ':count minitra', // less reliable
'year' => ':count taona',
'y' => ':count taona',
'a_year' => ':count taona',
'month' => ':count volana',
'm' => ':count volana',
'a_month' => ':count volana',
'week' => ':count herinandro',
'w' => ':count herinandro',
'a_week' => ':count herinandro',
'day' => ':count andro',
'd' => ':count andro',
'a_day' => ':count andro',
'hour' => ':count ora',
'h' => ':count ora',
'a_hour' => ':count ora',
'second' => ':count segondra',
's' => ':count segondra',
'a_second' => ':count segondra',
]);
src/Carbon/Lang/mgh.php 0000644 00000002306 14753612052 0010712 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['wichishu', 'mchochil’l'],
'weekdays' => ['Sabato', 'Jumatatu', 'Jumanne', 'Jumatano', 'Arahamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['Sab', 'Jtt', 'Jnn', 'Jtn', 'Ara', 'Iju', 'Jmo'],
'weekdays_min' => ['Sab', 'Jtt', 'Jnn', 'Jtn', 'Ara', 'Iju', 'Jmo'],
'months' => ['Mweri wo kwanza', 'Mweri wo unayeli', 'Mweri wo uneraru', 'Mweri wo unecheshe', 'Mweri wo unethanu', 'Mweri wo thanu na mocha', 'Mweri wo saba', 'Mweri wo nane', 'Mweri wo tisa', 'Mweri wo kumi', 'Mweri wo kumi na moja', 'Mweri wo kumi na yel’li'],
'months_short' => ['Kwa', 'Una', 'Rar', 'Che', 'Tha', 'Moc', 'Sab', 'Nan', 'Tis', 'Kum', 'Moj', 'Yel'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/mgo.php 0000644 00000002327 14753612052 0010724 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'weekdays' => ['Aneg 1', 'Aneg 2', 'Aneg 3', 'Aneg 4', 'Aneg 5', 'Aneg 6', 'Aneg 7'],
'weekdays_short' => ['Aneg 1', 'Aneg 2', 'Aneg 3', 'Aneg 4', 'Aneg 5', 'Aneg 6', 'Aneg 7'],
'weekdays_min' => ['1', '2', '3', '4', '5', '6', '7'],
'months' => ['iməg mbegtug', 'imeg àbùbì', 'imeg mbəŋchubi', 'iməg ngwə̀t', 'iməg fog', 'iməg ichiibɔd', 'iməg àdùmbə̀ŋ', 'iməg ichika', 'iməg kud', 'iməg tèsiʼe', 'iməg zò', 'iməg krizmed'],
'months_short' => ['mbegtug', 'imeg àbùbì', 'imeg mbəŋchubi', 'iməg ngwə̀t', 'iməg fog', 'iməg ichiibɔd', 'iməg àdùmbə̀ŋ', 'iməg ichika', 'iməg kud', 'iməg tèsiʼe', 'iməg zò', 'iməg krizmed'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'dddd, YYYY MMMM DD HH:mm',
],
]);
src/Carbon/Lang/mhr.php 0000644 00000000517 14753612052 0010727 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/mhr_RU.php';
src/Carbon/Lang/mhr_RU.php 0000644 00000003574 14753612052 0011343 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - PeshSajSoft Ltd. Vyacheslav Kileev slavakileev@yandex.ru
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY.MM.DD',
],
'months' => ['Шорыкйол', 'Пургыж', 'Ӱярня', 'Вӱдшор', 'Ага', 'Пеледыш', 'Сӱрем', 'Сорла', 'Идым', 'Шыжа', 'Кылме', 'Теле'],
'months_short' => ['Шрк', 'Пгж', 'Ӱрн', 'Вшр', 'Ага', 'Пдш', 'Срм', 'Срл', 'Идм', 'Шыж', 'Клм', 'Тел'],
'weekdays' => ['Рушарня', 'Шочмо', 'Кушкыжмо', 'Вӱргече', 'Изарня', 'Кугарня', 'Шуматкече'],
'weekdays_short' => ['Ршр', 'Шчм', 'Кжм', 'Вгч', 'Изр', 'Кгр', 'Шмт'],
'weekdays_min' => ['Ршр', 'Шчм', 'Кжм', 'Вгч', 'Изр', 'Кгр', 'Шмт'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count идалык',
'y' => ':count идалык',
'a_year' => ':count идалык',
'month' => ':count Тылзе',
'm' => ':count Тылзе',
'a_month' => ':count Тылзе',
'week' => ':count арня',
'w' => ':count арня',
'a_week' => ':count арня',
'day' => ':count кече',
'd' => ':count кече',
'a_day' => ':count кече',
'hour' => ':count час',
'h' => ':count час',
'a_hour' => ':count час',
'minute' => ':count минут',
'min' => ':count минут',
'a_minute' => ':count минут',
'second' => ':count кокымшан',
's' => ':count кокымшан',
'a_second' => ':count кокымшан',
]);
src/Carbon/Lang/mi.php 0000644 00000004464 14753612052 0010553 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - John Corrigan
* - François B
*/
return [
'year' => ':count tau',
'a_year' => '{1}he tau|:count tau',
'month' => ':count marama',
'a_month' => '{1}he marama|:count marama',
'week' => ':count wiki',
'a_week' => '{1}he wiki|:count wiki',
'day' => ':count ra',
'a_day' => '{1}he ra|:count ra',
'hour' => ':count haora',
'a_hour' => '{1}te haora|:count haora',
'minute' => ':count meneti',
'a_minute' => '{1}he meneti|:count meneti',
'second' => ':count hēkona',
'a_second' => '{1}te hēkona ruarua|:count hēkona',
'ago' => ':time i mua',
'from_now' => 'i roto i :time',
'diff_yesterday' => 'inanahi',
'diff_yesterday_regexp' => 'inanahi(?:\\s+i)?',
'diff_today' => 'i teie',
'diff_today_regexp' => 'i teie(?:\\s+mahana,)?(?:\\s+i)?',
'diff_tomorrow' => 'apopo',
'diff_tomorrow_regexp' => 'apopo(?:\\s+i)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY [i] HH:mm',
'LLLL' => 'dddd, D MMMM YYYY [i] HH:mm',
],
'calendar' => [
'sameDay' => '[i teie mahana, i] LT',
'nextDay' => '[apopo i] LT',
'nextWeek' => 'dddd [i] LT',
'lastDay' => '[inanahi i] LT',
'lastWeek' => 'dddd [whakamutunga i] LT',
'sameElse' => 'L',
],
'ordinal' => ':numberº',
'months' => ['Kohi-tāte', 'Hui-tanguru', 'Poutū-te-rangi', 'Paenga-whāwhā', 'Haratua', 'Pipiri', 'Hōngoingoi', 'Here-turi-kōkā', 'Mahuru', 'Whiringa-ā-nuku', 'Whiringa-ā-rangi', 'Hakihea'],
'months_short' => ['Kohi', 'Hui', 'Pou', 'Pae', 'Hara', 'Pipi', 'Hōngoi', 'Here', 'Mahu', 'Whi-nu', 'Whi-ra', 'Haki'],
'weekdays' => ['Rātapu', 'Mane', 'Tūrei', 'Wenerei', 'Tāite', 'Paraire', 'Hātarei'],
'weekdays_short' => ['Ta', 'Ma', 'Tū', 'We', 'Tāi', 'Pa', 'Hā'],
'weekdays_min' => ['Ta', 'Ma', 'Tū', 'We', 'Tāi', 'Pa', 'Hā'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' me te '],
];
src/Carbon/Lang/mi_NZ.php 0000644 00000000413 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/mi.php';
src/Carbon/Lang/miq.php 0000644 00000000517 14753612052 0010727 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/miq_NI.php';
src/Carbon/Lang/miq_NI.php 0000644 00000002334 14753612052 0011314 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['siakwa kati', 'kuswa kati', 'kakamuk kati', 'lî wainhka kati', 'lih mairin kati', 'lî kati', 'pastara kati', 'sikla kati', 'wîs kati', 'waupasa kati', 'yahbra kati', 'trisu kati'],
'months_short' => ['siakwa kati', 'kuswa kati', 'kakamuk kati', 'lî wainhka kati', 'lih mairin kati', 'lî kati', 'pastara kati', 'sikla kati', 'wîs kati', 'waupasa kati', 'yahbra kati', 'trisu kati'],
'weekdays' => ['sandi', 'mundi', 'tiusdi', 'wensde', 'tausde', 'praidi', 'satadi'],
'weekdays_short' => ['san', 'mun', 'tius', 'wens', 'taus', 'prai', 'sat'],
'weekdays_min' => ['san', 'mun', 'tius', 'wens', 'taus', 'prai', 'sat'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 7,
'meridiem' => ['VM', 'NM'],
'month' => ':count kati', // less reliable
'm' => ':count kati', // less reliable
'a_month' => ':count kati', // less reliable
]);
src/Carbon/Lang/mjw.php 0000644 00000000517 14753612052 0010736 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/mjw_IN.php';
src/Carbon/Lang/mjw_IN.php 0000644 00000001721 14753612052 0011322 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Jor Teron bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['Arkoi', 'Thangthang', 'There', 'Jangmi', 'Aru', 'Vosik', 'Jakhong', 'Paipai', 'Chiti', 'Phere', 'Phaikuni', 'Matijong'],
'months_short' => ['Ark', 'Thang', 'The', 'Jang', 'Aru', 'Vos', 'Jak', 'Pai', 'Chi', 'Phe', 'Phai', 'Mati'],
'weekdays' => ['Bhomkuru', 'Urmi', 'Durmi', 'Thelang', 'Theman', 'Bhomta', 'Bhomti'],
'weekdays_short' => ['Bhom', 'Ur', 'Dur', 'Tkel', 'Tkem', 'Bhta', 'Bhti'],
'weekdays_min' => ['Bhom', 'Ur', 'Dur', 'Tkel', 'Tkem', 'Bhta', 'Bhti'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/mk.php 0000644 00000007730 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Sashko Todorov
* - Josh Soref
* - François B
* - Serhan Apaydın
* - Borislav Mickov
* - JD Isaacks
* - Tomi Atanasoski
*/
use Carbon\CarbonInterface;
return [
'year' => ':count година|:count години',
'a_year' => 'година|:count години',
'y' => ':count год.',
'month' => ':count месец|:count месеци',
'a_month' => 'месец|:count месеци',
'm' => ':count месец|:count месеци',
'week' => ':count седмица|:count седмици',
'a_week' => 'седмица|:count седмици',
'w' => ':count седмица|:count седмици',
'day' => ':count ден|:count дена',
'a_day' => 'ден|:count дена',
'd' => ':count ден|:count дена',
'hour' => ':count час|:count часа',
'a_hour' => 'час|:count часа',
'h' => ':count час|:count часа',
'minute' => ':count минута|:count минути',
'a_minute' => 'минута|:count минути',
'min' => ':count мин.',
'second' => ':count секунда|:count секунди',
'a_second' => 'неколку секунди|:count секунди',
's' => ':count сек.',
'ago' => 'пред :time',
'from_now' => 'после :time',
'after' => 'по :time',
'before' => 'пред :time',
'diff_now' => 'сега',
'diff_today' => 'Денес',
'diff_today_regexp' => 'Денес(?:\\s+во)?',
'diff_yesterday' => 'вчера',
'diff_yesterday_regexp' => 'Вчера(?:\\s+во)?',
'diff_tomorrow' => 'утре',
'diff_tomorrow_regexp' => 'Утре(?:\\s+во)?',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'D.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY H:mm',
'LLLL' => 'dddd, D MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[Денес во] LT',
'nextDay' => '[Утре во] LT',
'nextWeek' => '[Во] dddd [во] LT',
'lastDay' => '[Вчера во] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0, 3, 6 => '[Изминатата] dddd [во] LT',
default => '[Изминатиот] dddd [во] LT',
},
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
$lastDigit = $number % 10;
$last2Digits = $number % 100;
if ($number === 0) {
return $number.'-ев';
}
if ($last2Digits === 0) {
return $number.'-ен';
}
if ($last2Digits > 10 && $last2Digits < 20) {
return $number.'-ти';
}
if ($lastDigit === 1) {
return $number.'-ви';
}
if ($lastDigit === 2) {
return $number.'-ри';
}
if ($lastDigit === 7 || $lastDigit === 8) {
return $number.'-ми';
}
return $number.'-ти';
},
'months' => ['јануари', 'февруари', 'март', 'април', 'мај', 'јуни', 'јули', 'август', 'септември', 'октомври', 'ноември', 'декември'],
'months_short' => ['јан', 'фев', 'мар', 'апр', 'мај', 'јун', 'јул', 'авг', 'сеп', 'окт', 'ное', 'дек'],
'weekdays' => ['недела', 'понеделник', 'вторник', 'среда', 'четврток', 'петок', 'сабота'],
'weekdays_short' => ['нед', 'пон', 'вто', 'сре', 'чет', 'пет', 'саб'],
'weekdays_min' => ['нe', 'пo', 'вт', 'ср', 'че', 'пе', 'сa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' и '],
'meridiem' => ['АМ', 'ПМ'],
];
src/Carbon/Lang/mk_MK.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/mk.php';
src/Carbon/Lang/ml.php 0000644 00000006446 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - JD Isaacks
*/
return [
'year' => ':count വർഷം',
'a_year' => 'ഒരു വർഷം|:count വർഷം',
'month' => ':count മാസം',
'a_month' => 'ഒരു മാസം|:count മാസം',
'week' => ':count ആഴ്ച',
'a_week' => 'ഒരാഴ്ച|:count ആഴ്ച',
'day' => ':count ദിവസം',
'a_day' => 'ഒരു ദിവസം|:count ദിവസം',
'hour' => ':count മണിക്കൂർ',
'a_hour' => 'ഒരു മണിക്കൂർ|:count മണിക്കൂർ',
'minute' => ':count മിനിറ്റ്',
'a_minute' => 'ഒരു മിനിറ്റ്|:count മിനിറ്റ്',
'second' => ':count സെക്കൻഡ്',
'a_second' => 'അൽപ നിമിഷങ്ങൾ|:count സെക്കൻഡ്',
'ago' => ':time മുൻപ്',
'from_now' => ':time കഴിഞ്ഞ്',
'diff_now' => 'ഇപ്പോൾ',
'diff_today' => 'ഇന്ന്',
'diff_yesterday' => 'ഇന്നലെ',
'diff_tomorrow' => 'നാളെ',
'formats' => [
'LT' => 'A h:mm -നു',
'LTS' => 'A h:mm:ss -നു',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm -നു',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm -നു',
],
'calendar' => [
'sameDay' => '[ഇന്ന്] LT',
'nextDay' => '[നാളെ] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[ഇന്നലെ] LT',
'lastWeek' => '[കഴിഞ്ഞ] dddd, LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'രാത്രി';
}
if ($hour < 12) {
return 'രാവിലെ';
}
if ($hour < 17) {
return 'ഉച്ച കഴിഞ്ഞ്';
}
if ($hour < 20) {
return 'വൈകുന്നേരം';
}
return 'രാത്രി';
},
'months' => ['ജനുവരി', 'ഫെബ്രുവരി', 'മാർച്ച്', 'ഏപ്രിൽ', 'മേയ്', 'ജൂൺ', 'ജൂലൈ', 'ഓഗസ്റ്റ്', 'സെപ്റ്റംബർ', 'ഒക്ടോബർ', 'നവംബർ', 'ഡിസംബർ'],
'months_short' => ['ജനു.', 'ഫെബ്രു.', 'മാർ.', 'ഏപ്രി.', 'മേയ്', 'ജൂൺ', 'ജൂലൈ.', 'ഓഗ.', 'സെപ്റ്റ.', 'ഒക്ടോ.', 'നവം.', 'ഡിസം.'],
'weekdays' => ['ഞായറാഴ്ച', 'തിങ്കളാഴ്ച', 'ചൊവ്വാഴ്ച', 'ബുധനാഴ്ച', 'വ്യാഴാഴ്ച', 'വെള്ളിയാഴ്ച', 'ശനിയാഴ്ച'],
'weekdays_short' => ['ഞായർ', 'തിങ്കൾ', 'ചൊവ്വ', 'ബുധൻ', 'വ്യാഴം', 'വെള്ളി', 'ശനി'],
'weekdays_min' => ['ഞാ', 'തി', 'ചൊ', 'ബു', 'വ്യാ', 'വെ', 'ശ'],
'list' => ', ',
'weekend' => [0, 0],
];
src/Carbon/Lang/ml_IN.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ml.php';
src/Carbon/Lang/mn.php 0000644 00000010041 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Tsutomu Kuroda
* - tjku
* - Max Melentiev
* - Zolzaya Erdenebaatar
* - Tom Hughes
* - Akira Matsuda
* - Christopher Dell
* - Michael Kessler
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Nicolás Hock Isaza
* - Ochirkhuyag
* - Batmandakh
* - lucifer-crybaby
*/
return [
'year' => ':count жил',
'y' => ':count жил',
'month' => ':count сар',
'm' => ':count сар',
'week' => ':count долоо хоног',
'w' => ':count долоо хоног',
'day' => ':count өдөр',
'd' => ':count өдөр',
'hour' => ':count цаг',
'h' => ':countц',
'minute' => ':count минут',
'min' => ':countм',
'second' => ':count секунд',
's' => ':countс',
'ago_mode' => 'last',
'ago' => ':time өмнө',
'year_ago' => ':count жилийн',
'y_ago' => ':count жилийн',
'month_ago' => ':count сарын',
'm_ago' => ':count сарын',
'day_ago' => ':count хоногийн',
'd_ago' => ':count хоногийн',
'week_ago' => ':count долоо хоногийн',
'w_ago' => ':count долоо хоногийн',
'hour_ago' => ':count цагийн',
'minute_ago' => ':count минутын',
'second_ago' => ':count секундын',
'from_now_mode' => 'last',
'from_now' => 'одоогоос :time',
'year_from_now' => ':count жилийн дараа',
'y_from_now' => ':count жилийн дараа',
'month_from_now' => ':count сарын дараа',
'm_from_now' => ':count сарын дараа',
'day_from_now' => ':count хоногийн дараа',
'd_from_now' => ':count хоногийн дараа',
'hour_from_now' => ':count цагийн дараа',
'minute_from_now' => ':count минутын дараа',
'second_from_now' => ':count секундын дараа',
'after_mode' => 'last',
'after' => ':time дараа',
'year_after' => ':count жилийн',
'y_after' => ':count жилийн',
'month_after' => ':count сарын',
'm_after' => ':count сарын',
'day_after' => ':count хоногийн',
'd_after' => ':count хоногийн',
'hour_after' => ':count цагийн',
'minute_after' => ':count минутын',
'second_after' => ':count секундын',
'before_mode' => 'last',
'before' => ':time өмнө',
'year_before' => ':count жилийн',
'y_before' => ':count жилийн',
'month_before' => ':count сарын',
'm_before' => ':count сарын',
'day_before' => ':count хоногийн',
'd_before' => ':count хоногийн',
'hour_before' => ':count цагийн',
'minute_before' => ':count минутын',
'second_before' => ':count секундын',
'list' => ', ',
'diff_now' => 'одоо',
'diff_yesterday' => 'өчигдөр',
'diff_tomorrow' => 'маргааш',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'YYYY MMMM DD',
'LLL' => 'YY-MM-DD, HH:mm',
'LLLL' => 'YYYY MMMM DD, HH:mm',
],
'weekdays' => ['Ням', 'Даваа', 'Мягмар', 'Лхагва', 'Пүрэв', 'Баасан', 'Бямба'],
'weekdays_short' => ['Ня', 'Да', 'Мя', 'Лх', 'Пү', 'Ба', 'Бя'],
'weekdays_min' => ['Ня', 'Да', 'Мя', 'Лх', 'Пү', 'Ба', 'Бя'],
'months' => ['1 сар', '2 сар', '3 сар', '4 сар', '5 сар', '6 сар', '7 сар', '8 сар', '9 сар', '10 сар', '11 сар', '12 сар'],
'months_short' => ['1 сар', '2 сар', '3 сар', '4 сар', '5 сар', '6 сар', '7 сар', '8 сар', '9 сар', '10 сар', '11 сар', '12 сар'],
'meridiem' => ['өглөө', 'орой'],
'first_day_of_week' => 1,
];
src/Carbon/Lang/mn_MN.php 0000644 00000000413 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/mn.php';
src/Carbon/Lang/mni.php 0000644 00000000517 14753612052 0010724 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/mni_IN.php';
src/Carbon/Lang/mni_IN.php 0000644 00000003432 14753612052 0011311 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat Pune libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['জানুৱারি', 'ফেব্রুৱারি', 'মার্চ', 'এপ্রিল', 'মে', 'জুন', 'জুলাই', 'আগষ্ট', 'সেপ্তেম্বর', 'ওক্তোবর', 'নবেম্বর', 'ডিসেম্বর'],
'months_short' => ['জান', 'ফেব', 'মার', 'এপ্রি', 'মে', 'জুন', 'জুল', 'আগ', 'সেপ', 'ওক্ত', 'নবে', 'ডিস'],
'weekdays' => ['নোংমাইজিং', 'নিংথৌকাবা', 'লৈবাকপোকপা', 'য়ুমশকৈশা', 'শগোলশেন', 'ইরাই', 'থাংজ'],
'weekdays_short' => ['নোং', 'নিং', 'লৈবাক', 'য়ুম', 'শগোল', 'ইরা', 'থাং'],
'weekdays_min' => ['নোং', 'নিং', 'লৈবাক', 'য়ুম', 'শগোল', 'ইরা', 'থাং'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['এ.ম.', 'প.ম.'],
'year' => ':count ইসিং', // less reliable
'y' => ':count ইসিং', // less reliable
'a_year' => ':count ইসিং', // less reliable
'second' => ':count ꯅꯤꯡꯊꯧꯀꯥꯕ', // less reliable
's' => ':count ꯅꯤꯡꯊꯧꯀꯥꯕ', // less reliable
'a_second' => ':count ꯅꯤꯡꯊꯧꯀꯥꯕ', // less reliable
]);
src/Carbon/Lang/mo.php 0000644 00000000413 14753612052 0010547 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ro.php';
src/Carbon/Lang/mr.php 0000644 00000006242 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Vikram-enyota
*/
return [
'year' => ':count वर्ष',
'y' => ':count वर्ष',
'month' => ':count महिना|:count महिने',
'm' => ':count महिना|:count महिने',
'week' => ':count आठवडा|:count आठवडे',
'w' => ':count आठवडा|:count आठवडे',
'day' => ':count दिवस',
'd' => ':count दिवस',
'hour' => ':count तास',
'h' => ':count तास',
'minute' => ':count मिनिटे',
'min' => ':count मिनिटे',
'second' => ':count सेकंद',
's' => ':count सेकंद',
'ago' => ':timeपूर्वी',
'from_now' => ':timeमध्ये',
'before' => ':timeपूर्वी',
'after' => ':timeनंतर',
'diff_now' => 'आत्ता',
'diff_today' => 'आज',
'diff_yesterday' => 'काल',
'diff_tomorrow' => 'उद्या',
'formats' => [
'LT' => 'A h:mm वाजता',
'LTS' => 'A h:mm:ss वाजता',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm वाजता',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm वाजता',
],
'calendar' => [
'sameDay' => '[आज] LT',
'nextDay' => '[उद्या] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[काल] LT',
'lastWeek' => '[मागील] dddd, LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'रात्री';
}
if ($hour < 10) {
return 'सकाळी';
}
if ($hour < 17) {
return 'दुपारी';
}
if ($hour < 20) {
return 'सायंकाळी';
}
return 'रात्री';
},
'months' => ['जानेवारी', 'फेब्रुवारी', 'मार्च', 'एप्रिल', 'मे', 'जून', 'जुलै', 'ऑगस्ट', 'सप्टेंबर', 'ऑक्टोबर', 'नोव्हेंबर', 'डिसेंबर'],
'months_short' => ['जाने.', 'फेब्रु.', 'मार्च.', 'एप्रि.', 'मे.', 'जून.', 'जुलै.', 'ऑग.', 'सप्टें.', 'ऑक्टो.', 'नोव्हें.', 'डिसें.'],
'weekdays' => ['रविवार', 'सोमवार', 'मंगळवार', 'बुधवार', 'गुरूवार', 'शुक्रवार', 'शनिवार'],
'weekdays_short' => ['रवि', 'सोम', 'मंगळ', 'बुध', 'गुरू', 'शुक्र', 'शनि'],
'weekdays_min' => ['र', 'सो', 'मं', 'बु', 'गु', 'शु', 'श'],
'list' => [', ', ' आणि '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'weekend' => [0, 0],
];
src/Carbon/Lang/mr_IN.php 0000644 00000000413 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/mr.php';
src/Carbon/Lang/ms.php 0000644 00000006334 14753612052 0010563 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - Azri Jamil
* - JD Isaacks
* - Josh Soref
* - Azri Jamil
* - Hariadi Hinta
* - Ashraf Kamarudin
*/
return [
'year' => ':count tahun',
'a_year' => '{1}setahun|]1,Inf[:count tahun',
'y' => ':count tahun',
'month' => ':count bulan',
'a_month' => '{1}sebulan|]1,Inf[:count bulan',
'm' => ':count bulan',
'week' => ':count minggu',
'a_week' => '{1}seminggu|]1,Inf[:count minggu',
'w' => ':count minggu',
'day' => ':count hari',
'a_day' => '{1}sehari|]1,Inf[:count hari',
'd' => ':count hari',
'hour' => ':count jam',
'a_hour' => '{1}sejam|]1,Inf[:count jam',
'h' => ':count jam',
'minute' => ':count minit',
'a_minute' => '{1}seminit|]1,Inf[:count minit',
'min' => ':count minit',
'second' => ':count saat',
'a_second' => '{1}beberapa saat|]1,Inf[:count saat',
'millisecond' => ':count milisaat',
'a_millisecond' => '{1}semilisaat|]1,Inf[:count milliseconds',
'microsecond' => ':count mikrodetik',
'a_microsecond' => '{1}semikrodetik|]1,Inf[:count mikrodetik',
's' => ':count saat',
'ago' => ':time yang lepas',
'from_now' => ':time dari sekarang',
'after' => ':time kemudian',
'before' => ':time sebelum',
'diff_now' => 'sekarang',
'diff_today' => 'Hari',
'diff_today_regexp' => 'Hari(?:\\s+ini)?(?:\\s+pukul)?',
'diff_yesterday' => 'semalam',
'diff_yesterday_regexp' => 'Semalam(?:\\s+pukul)?',
'diff_tomorrow' => 'esok',
'diff_tomorrow_regexp' => 'Esok(?:\\s+pukul)?',
'diff_before_yesterday' => 'kelmarin',
'diff_after_tomorrow' => 'lusa',
'formats' => [
'LT' => 'HH.mm',
'LTS' => 'HH.mm.ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY [pukul] HH.mm',
'LLLL' => 'dddd, D MMMM YYYY [pukul] HH.mm',
],
'calendar' => [
'sameDay' => '[Hari ini pukul] LT',
'nextDay' => '[Esok pukul] LT',
'nextWeek' => 'dddd [pukul] LT',
'lastDay' => '[Kelmarin pukul] LT',
'lastWeek' => 'dddd [lepas pukul] LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 1) {
return 'tengah malam';
}
if ($hour < 12) {
return 'pagi';
}
if ($hour < 13) {
return 'tengah hari';
}
if ($hour < 19) {
return 'petang';
}
return 'malam';
},
'months' => ['Januari', 'Februari', 'Mac', 'April', 'Mei', 'Jun', 'Julai', 'Ogos', 'September', 'Oktober', 'November', 'Disember'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ogs', 'Sep', 'Okt', 'Nov', 'Dis'],
'weekdays' => ['Ahad', 'Isnin', 'Selasa', 'Rabu', 'Khamis', 'Jumaat', 'Sabtu'],
'weekdays_short' => ['Ahd', 'Isn', 'Sel', 'Rab', 'Kha', 'Jum', 'Sab'],
'weekdays_min' => ['Ah', 'Is', 'Sl', 'Rb', 'Km', 'Jm', 'Sb'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' dan '],
];
src/Carbon/Lang/ms_BN.php 0000644 00000001043 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ms.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/MM/yy',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY, h:mm a',
'LLLL' => 'dd MMMM YYYY, h:mm a',
],
'meridiem' => ['a', 'p'],
]);
src/Carbon/Lang/ms_MY.php 0000644 00000000516 14753612052 0011164 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - Azri Jamil
* - JD Isaacks
*/
return require __DIR__.'/ms.php';
src/Carbon/Lang/ms_SG.php 0000644 00000001050 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ms.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/MM/yy',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY, h:mm a',
'LLLL' => 'dddd, D MMMM YYYY, h:mm a',
],
'meridiem' => ['a', 'p'],
]);
src/Carbon/Lang/mt.php 0000644 00000005166 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Alessandro Maruccia
*/
return [
'year' => 'sena|:count sni|:count sni|:count sni',
'y' => 'sa sena|:count snin|:count snin|:count snin',
'month' => 'xahar|:count xhur|:count xhur|:count xhur',
'm' => ':count xahar|:count xhur|:count xhur|:count xhur',
'week' => 'gimgħa|:count ġimgħat|:count ġimgħat|:count ġimgħat',
'w' => 'ġimgħa|:count ġimgħat|:count ġimgħat|:count ġimgħat',
'day' => 'ġurnata|:count ġranet|:count ġranet|:count ġranet',
'd' => 'ġurnata|:count ġranet|:count ġranet|:count ġranet',
'hour' => 'siegħa|:count siegħat|:count siegħat|:count siegħat',
'h' => 'siegħa|:count sigħat|:count sigħat|:count sigħat',
'minute' => 'minuta|:count minuti|:count minuti|:count minuti',
'min' => 'min.|:count min.|:count min.|:count min.',
'second' => 'ftit sekondi|:count sekondi|:count sekondi|:count sekondi',
's' => 'sek.|:count sek.|:count sek.|:count sek.',
'ago' => ':time ilu',
'from_now' => 'f’ :time',
'diff_now' => 'issa',
'diff_today' => 'Illum',
'diff_today_regexp' => 'Illum(?:\\s+fil-)?',
'diff_yesterday' => 'lbieraħ',
'diff_yesterday_regexp' => 'Il-bieraħ(?:\\s+fil-)?',
'diff_tomorrow' => 'għada',
'diff_tomorrow_regexp' => 'Għada(?:\\s+fil-)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Illum fil-]LT',
'nextDay' => '[Għada fil-]LT',
'nextWeek' => 'dddd [fil-]LT',
'lastDay' => '[Il-bieraħ fil-]LT',
'lastWeek' => 'dddd [li għadda] [fil-]LT',
'sameElse' => 'L',
],
'ordinal' => ':numberº',
'months' => ['Jannar', 'Frar', 'Marzu', 'April', 'Mejju', 'Ġunju', 'Lulju', 'Awwissu', 'Settembru', 'Ottubru', 'Novembru', 'Diċembru'],
'months_short' => ['Jan', 'Fra', 'Mar', 'Apr', 'Mej', 'Ġun', 'Lul', 'Aww', 'Set', 'Ott', 'Nov', 'Diċ'],
'weekdays' => ['Il-Ħadd', 'It-Tnejn', 'It-Tlieta', 'L-Erbgħa', 'Il-Ħamis', 'Il-Ġimgħa', 'Is-Sibt'],
'weekdays_short' => ['Ħad', 'Tne', 'Tli', 'Erb', 'Ħam', 'Ġim', 'Sib'],
'weekdays_min' => ['Ħa', 'Tn', 'Tl', 'Er', 'Ħa', 'Ġi', 'Si'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' u '],
];
src/Carbon/Lang/mt_MT.php 0000644 00000000413 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/mt.php';
src/Carbon/Lang/mua.php 0000644 00000002230 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['comme', 'lilli'],
'weekdays' => ['Com’yakke', 'Comlaaɗii', 'Comzyiiɗii', 'Comkolle', 'Comkaldǝɓlii', 'Comgaisuu', 'Comzyeɓsuu'],
'weekdays_short' => ['Cya', 'Cla', 'Czi', 'Cko', 'Cka', 'Cga', 'Cze'],
'weekdays_min' => ['Cya', 'Cla', 'Czi', 'Cko', 'Cka', 'Cga', 'Cze'],
'months' => ['Fĩi Loo', 'Cokcwaklaŋne', 'Cokcwaklii', 'Fĩi Marfoo', 'Madǝǝuutǝbijaŋ', 'Mamǝŋgwãafahbii', 'Mamǝŋgwãalii', 'Madǝmbii', 'Fĩi Dǝɓlii', 'Fĩi Mundaŋ', 'Fĩi Gwahlle', 'Fĩi Yuru'],
'months_short' => ['FLO', 'CLA', 'CKI', 'FMF', 'MAD', 'MBI', 'MLI', 'MAM', 'FDE', 'FMU', 'FGW', 'FYU'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/my.php 0000644 00000010214 14753612052 0010561 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - JD Isaacks
* - Nay Lin Aung
*/
return [
'year' => '{1}တစ်နှစ်|]1,Inf[:count နှစ်',
'y' => ':count နှစ်',
'month' => '{1}တစ်လ|]1,Inf[:count လ',
'm' => ':count လ',
'week' => ':count ပတ်',
'w' => ':count ပတ်',
'day' => '{1}တစ်ရက်|]1,Inf[:count ရက်',
'd' => ':count ရက်',
'hour' => '{1}တစ်နာရီ|]1,Inf[:count နာရီ',
'h' => ':count နာရီ',
'minute' => '{1}တစ်မိနစ်|]1,Inf[:count မိနစ်',
'min' => ':count မိနစ်',
'second' => '{1}စက္ကန်.အနည်းငယ်|]1,Inf[:count စက္ကန့်',
's' => ':count စက္ကန့်',
'ago' => 'လွန်ခဲ့သော :time က',
'from_now' => 'လာမည့် :time မှာ',
'after' => ':time ကြာပြီးနောက်',
'before' => ':time မတိုင်ခင်',
'diff_now' => 'အခုလေးတင်',
'diff_today' => 'ယနေ.',
'diff_yesterday' => 'မနေ့က',
'diff_yesterday_regexp' => 'မနေ.က',
'diff_tomorrow' => 'မနက်ဖြန်',
'diff_before_yesterday' => 'တမြန်နေ့က',
'diff_after_tomorrow' => 'တဘက်ခါ',
'period_recurrences' => ':count ကြိမ်',
'formats' => [
'LT' => 'Oh:Om A',
'LTS' => 'Oh:Om:Os A',
'L' => 'OD/OM/OY',
'LL' => 'OD MMMM OY',
'LLL' => 'OD MMMM OY Oh:Om A',
'LLLL' => 'dddd OD MMMM OY Oh:Om A',
],
'calendar' => [
'sameDay' => '[ယနေ.] LT [မှာ]',
'nextDay' => '[မနက်ဖြန်] LT [မှာ]',
'nextWeek' => 'dddd LT [မှာ]',
'lastDay' => '[မနေ.က] LT [မှာ]',
'lastWeek' => '[ပြီးခဲ့သော] dddd LT [မှာ]',
'sameElse' => 'L',
],
'months' => ['ဇန်နဝါရီ', 'ဖေဖော်ဝါရီ', 'မတ်', 'ဧပြီ', 'မေ', 'ဇွန်', 'ဇူလိုင်', 'သြဂုတ်', 'စက်တင်ဘာ', 'အောက်တိုဘာ', 'နိုဝင်ဘာ', 'ဒီဇင်ဘာ'],
'months_short' => ['ဇန်', 'ဖေ', 'မတ်', 'ပြီ', 'မေ', 'ဇွန်', 'လိုင်', 'သြ', 'စက်', 'အောက်', 'နို', 'ဒီ'],
'weekdays' => ['တနင်္ဂနွေ', 'တနင်္လာ', 'အင်္ဂါ', 'ဗုဒ္ဓဟူး', 'ကြာသပတေး', 'သောကြာ', 'စနေ'],
'weekdays_short' => ['နွေ', 'လာ', 'ဂါ', 'ဟူး', 'ကြာ', 'သော', 'နေ'],
'weekdays_min' => ['နွေ', 'လာ', 'ဂါ', 'ဟူး', 'ကြာ', 'သော', 'နေ'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'alt_numbers' => ['၀၀', '၀၁', '၀၂', '၀၃', '၀၄', '၀၅', '၀၆', '၀၇', '၀၈', '၀၉', '၁၀', '၁၁', '၁၂', '၁၃', '၁၄', '၁၅', '၁၆', '၁၇', '၁၈', '၁၉', '၂၀', '၂၁', '၂၂', '၂၃', '၂၄', '၂၅', '၂၆', '၂၇', '၂၈', '၂၉', '၃၀', '၃၁', '၃၂', '၃၃', '၃၄', '၃၅', '၃၆', '၃၇', '၃၈', '၃၉', '၄၀', '၄၁', '၄၂', '၄၃', '၄၄', '၄၅', '၄၆', '၄၇', '၄၈', '၄၉', '၅၀', '၅၁', '၅၂', '၅၃', '၅၄', '၅၅', '၅၆', '၅၇', '၅၈', '၅၉', '၆၀', '၆၁', '၆၂', '၆၃', '၆၄', '၆၅', '၆၆', '၆၇', '၆၈', '၆၉', '၇၀', '၇၁', '၇၂', '၇၃', '၇၄', '၇၅', '၇၆', '၇၇', '၇၈', '၇၉', '၈၀', '၈၁', '၈၂', '၈၃', '၈၄', '၈၅', '၈၆', '၈၇', '၈၈', '၈၉', '၉၀', '၉၁', '၉၂', '၉၃', '၉၄', '၉၅', '၉၆', '၉၇', '၉၈', '၉၉'],
'meridiem' => ['နံနက်', 'ညနေ'],
];
src/Carbon/Lang/my_MM.php 0000644 00000000413 14753612052 0011152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/my.php';
src/Carbon/Lang/mzn.php 0000644 00000001660 14753612052 0010745 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fa.php', [
'months' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
'months_short' => ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن', 'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'],
'first_day_of_week' => 6,
'weekend' => [5, 5],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'YYYY MMMM D, dddd HH:mm',
],
]);
src/Carbon/Lang/nan.php 0000644 00000000517 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/nan_TW.php';
src/Carbon/Lang/nan_TW.php 0000644 00000003267 14753612052 0011334 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY年MM月DD日',
],
'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'months_short' => [' 1月', ' 2月', ' 3月', ' 4月', ' 5月', ' 6月', ' 7月', ' 8月', ' 9月', '10月', '11月', '12月'],
'weekdays' => ['禮拜日', '禮拜一', '禮拜二', '禮拜三', '禮拜四', '禮拜五', '禮拜六'],
'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['頂晡', '下晡'],
'year' => ':count 年',
'y' => ':count 年',
'a_year' => ':count 年',
'month' => ':count goe̍h',
'm' => ':count goe̍h',
'a_month' => ':count goe̍h',
'week' => ':count lé-pài',
'w' => ':count lé-pài',
'a_week' => ':count lé-pài',
'day' => ':count 日',
'd' => ':count 日',
'a_day' => ':count 日',
'hour' => ':count tiám-cheng',
'h' => ':count tiám-cheng',
'a_hour' => ':count tiám-cheng',
'minute' => ':count Hun-cheng',
'min' => ':count Hun-cheng',
'a_minute' => ':count Hun-cheng',
'second' => ':count Bió',
's' => ':count Bió',
'a_second' => ':count Bió',
]);
src/Carbon/Lang/nan_TW@latin.php 0000644 00000001775 14753612052 0012466 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Arne Goetje arne@canonical.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
'months' => ['1goe̍h', '2goe̍h', '3goe̍h', '4goe̍h', '5goe̍h', '6goe̍h', '7goe̍h', '8goe̍h', '9goe̍h', '10goe̍h', '11goe̍h', '12goe̍h'],
'months_short' => ['1g', '2g', '3g', '4g', '5g', '6g', '7g', '8g', '9g', '10g', '11g', '12g'],
'weekdays' => ['lé-pài-ji̍t', 'pài-it', 'pài-jī', 'pài-saⁿ', 'pài-sì', 'pài-gō͘', 'pài-la̍k'],
'weekdays_short' => ['lp', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6'],
'weekdays_min' => ['lp', 'p1', 'p2', 'p3', 'p4', 'p5', 'p6'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['téng-po͘', 'ē-po͘'],
]);
src/Carbon/Lang/naq.php 0000644 00000003730 14753612052 0010720 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['ǁgoagas', 'ǃuias'],
'weekdays' => ['Sontaxtsees', 'Mantaxtsees', 'Denstaxtsees', 'Wunstaxtsees', 'Dondertaxtsees', 'Fraitaxtsees', 'Satertaxtsees'],
'weekdays_short' => ['Son', 'Ma', 'De', 'Wu', 'Do', 'Fr', 'Sat'],
'weekdays_min' => ['Son', 'Ma', 'De', 'Wu', 'Do', 'Fr', 'Sat'],
'months' => ['ǃKhanni', 'ǃKhanǀgôab', 'ǀKhuuǁkhâb', 'ǃHôaǂkhaib', 'ǃKhaitsâb', 'Gamaǀaeb', 'ǂKhoesaob', 'Aoǁkhuumûǁkhâb', 'Taraǀkhuumûǁkhâb', 'ǂNûǁnâiseb', 'ǀHooǂgaeb', 'Hôasoreǁkhâb'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd, D MMMM YYYY h:mm a',
],
'year' => ':count kurigu',
'y' => ':count kurigu',
'a_year' => ':count kurigu',
'month' => ':count ǁaub', // less reliable
'm' => ':count ǁaub', // less reliable
'a_month' => ':count ǁaub', // less reliable
'week' => ':count hû', // less reliable
'w' => ':count hû', // less reliable
'a_week' => ':count hû', // less reliable
'day' => ':count ǀhobas', // less reliable
'd' => ':count ǀhobas', // less reliable
'a_day' => ':count ǀhobas', // less reliable
'hour' => ':count ǂgaes', // less reliable
'h' => ':count ǂgaes', // less reliable
'a_hour' => ':count ǂgaes', // less reliable
'minute' => ':count minutga', // less reliable
'min' => ':count minutga', // less reliable
'a_minute' => ':count minutga', // less reliable
]);
src/Carbon/Lang/nb.php 0000644 00000005605 14753612052 0010543 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Alexander Tømmerås
* - Sigurd Gartmann
* - JD Isaacks
*/
return [
'year' => ':count år|:count år',
'a_year' => 'ett år|:count år',
'y' => ':count år|:count år',
'month' => ':count måned|:count måneder',
'a_month' => 'en måned|:count måneder',
'm' => ':count md.',
'week' => ':count uke|:count uker',
'a_week' => 'en uke|:count uker',
'w' => ':count u.',
'day' => ':count dag|:count dager',
'a_day' => 'en dag|:count dager',
'd' => ':count d.',
'hour' => ':count time|:count timer',
'a_hour' => 'en time|:count timer',
'h' => ':count t',
'minute' => ':count minutt|:count minutter',
'a_minute' => 'ett minutt|:count minutter',
'min' => ':count min',
'second' => ':count sekund|:count sekunder',
'a_second' => 'noen sekunder|:count sekunder',
's' => ':count sek',
'ago' => ':time siden',
'from_now' => 'om :time',
'after' => ':time etter',
'before' => ':time før',
'diff_now' => 'akkurat nå',
'diff_today' => 'i dag',
'diff_today_regexp' => 'i dag(?:\\s+kl.)?',
'diff_yesterday' => 'i går',
'diff_yesterday_regexp' => 'i går(?:\\s+kl.)?',
'diff_tomorrow' => 'i morgen',
'diff_tomorrow_regexp' => 'i morgen(?:\\s+kl.)?',
'diff_before_yesterday' => 'i forgårs',
'diff_after_tomorrow' => 'i overmorgen',
'period_recurrences' => 'en gang|:count ganger',
'period_interval' => 'hver :interval',
'period_start_date' => 'fra :date',
'period_end_date' => 'til :date',
'months' => ['januar', 'februar', 'mars', 'april', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
'weekdays' => ['søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag'],
'weekdays_short' => ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],
'weekdays_min' => ['sø', 'ma', 'ti', 'on', 'to', 'fr', 'lø'],
'ordinal' => ':number.',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY [kl.] HH:mm',
'LLLL' => 'dddd D. MMMM YYYY [kl.] HH:mm',
],
'calendar' => [
'sameDay' => '[i dag kl.] LT',
'nextDay' => '[i morgen kl.] LT',
'nextWeek' => 'dddd [kl.] LT',
'lastDay' => '[i går kl.] LT',
'lastWeek' => '[forrige] dddd [kl.] LT',
'sameElse' => 'L',
],
'list' => [', ', ' og '],
'meridiem' => ['a.m.', 'p.m.'],
];
src/Carbon/Lang/nb_NO.php 0000644 00000000413 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/nb.php';
src/Carbon/Lang/nb_SJ.php 0000644 00000000670 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/nb.php', [
'formats' => [
'LL' => 'D. MMM YYYY',
'LLL' => 'D. MMMM YYYY, HH:mm',
'LLLL' => 'dddd D. MMMM YYYY, HH:mm',
],
]);
src/Carbon/Lang/nd.php 0000644 00000003624 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'weekdays' => ['Sonto', 'Mvulo', 'Sibili', 'Sithathu', 'Sine', 'Sihlanu', 'Mgqibelo'],
'weekdays_short' => ['Son', 'Mvu', 'Sib', 'Sit', 'Sin', 'Sih', 'Mgq'],
'weekdays_min' => ['Son', 'Mvu', 'Sib', 'Sit', 'Sin', 'Sih', 'Mgq'],
'months' => ['Zibandlela', 'Nhlolanja', 'Mbimbitho', 'Mabasa', 'Nkwenkwezi', 'Nhlangula', 'Ntulikazi', 'Ncwabakazi', 'Mpandula', 'Mfumfu', 'Lwezi', 'Mpalakazi'],
'months_short' => ['Zib', 'Nhlo', 'Mbi', 'Mab', 'Nkw', 'Nhla', 'Ntu', 'Ncw', 'Mpan', 'Mfu', 'Lwe', 'Mpal'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'year' => 'okweminyaka engu-:count', // less reliable
'y' => 'okweminyaka engu-:count', // less reliable
'a_year' => 'okweminyaka engu-:count', // less reliable
'month' => 'inyanga ezingu-:count',
'm' => 'inyanga ezingu-:count',
'a_month' => 'inyanga ezingu-:count',
'week' => 'amaviki angu-:count',
'w' => 'amaviki angu-:count',
'a_week' => 'amaviki angu-:count',
'day' => 'kwamalanga angu-:count',
'd' => 'kwamalanga angu-:count',
'a_day' => 'kwamalanga angu-:count',
'hour' => 'amahola angu-:count',
'h' => 'amahola angu-:count',
'a_hour' => 'amahola angu-:count',
'minute' => 'imizuzu engu-:count',
'min' => 'imizuzu engu-:count',
'a_minute' => 'imizuzu engu-:count',
'second' => 'imizuzwana engu-:count',
's' => 'imizuzwana engu-:count',
'a_second' => 'imizuzwana engu-:count',
]);
src/Carbon/Lang/nds.php 0000644 00000000517 14753612052 0010725 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/nds_DE.php';
src/Carbon/Lang/nds_DE.php 0000644 00000003754 14753612052 0011303 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Jannuaar', 'Feberwaar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
'months_short' => ['Jan', 'Feb', 'Mär', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
'weekdays' => ['Sünndag', 'Maandag', 'Dingsdag', 'Middeweek', 'Dunnersdag', 'Freedag', 'Sünnavend'],
'weekdays_short' => ['Sdag', 'Maan', 'Ding', 'Midd', 'Dunn', 'Free', 'Svd.'],
'weekdays_min' => ['Sd', 'Ma', 'Di', 'Mi', 'Du', 'Fr', 'Sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count Johr',
'y' => ':countJ',
'a_year' => '{1}een Johr|:count Johr',
'month' => ':count Maand',
'm' => ':countM',
'a_month' => '{1}een Maand|:count Maand',
'week' => ':count Week|:count Weken',
'w' => ':countW',
'a_week' => '{1}een Week|:count Week|:count Weken',
'day' => ':count Dag|:count Daag',
'd' => ':countD',
'a_day' => '{1}een Dag|:count Dag|:count Daag',
'hour' => ':count Stünn|:count Stünnen',
'h' => ':countSt',
'a_hour' => '{1}een Stünn|:count Stünn|:count Stünnen',
'minute' => ':count Minuut|:count Minuten',
'min' => ':countm',
'a_minute' => '{1}een Minuut|:count Minuut|:count Minuten',
'second' => ':count Sekunn|:count Sekunnen',
's' => ':counts',
'a_second' => 'en poor Sekunnen|:count Sekunn|:count Sekunnen',
'ago' => 'vör :time',
'from_now' => 'in :time',
'before' => ':time vörher',
'after' => ':time later',
]);
src/Carbon/Lang/nds_NL.php 0000644 00000002040 14753612052 0011307 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - information from Kenneth Christiansen Kenneth Christiansen, Pablo Saratxaga kenneth@gnu.org, pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Jaunuwoa', 'Februwoa', 'Moaz', 'Aprell', 'Mai', 'Juni', 'Juli', 'August', 'Septamba', 'Oktoba', 'Nowamba', 'Dezamba'],
'months_short' => ['Jan', 'Feb', 'Moz', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Now', 'Dez'],
'weekdays' => ['Sinndag', 'Mondag', 'Dingsdag', 'Meddwäakj', 'Donnadag', 'Friedag', 'Sinnowend'],
'weekdays_short' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
'weekdays_min' => ['Sdg', 'Mdg', 'Dsg', 'Mwk', 'Ddg', 'Fdg', 'Swd'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/ne.php 0000644 00000006302 14753612052 0010541 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - nootanghimire
* - Josh Soref
* - Nj Subedi
* - JD Isaacks
*/
return [
'year' => 'एक बर्ष|:count बर्ष',
'y' => ':count वर्ष',
'month' => 'एक महिना|:count महिना',
'm' => ':count महिना',
'week' => ':count हप्ता',
'w' => ':count हप्ता',
'day' => 'एक दिन|:count दिन',
'd' => ':count दिन',
'hour' => 'एक घण्टा|:count घण्टा',
'h' => ':count घण्टा',
'minute' => 'एक मिनेट|:count मिनेट',
'min' => ':count मिनेट',
'second' => 'केही क्षण|:count सेकेण्ड',
's' => ':count सेकेण्ड',
'ago' => ':time अगाडि',
'from_now' => ':timeमा',
'after' => ':time पछि',
'before' => ':time अघि',
'diff_now' => 'अहिले',
'diff_today' => 'आज',
'diff_yesterday' => 'हिजो',
'diff_tomorrow' => 'भोलि',
'formats' => [
'LT' => 'Aको h:mm बजे',
'LTS' => 'Aको h:mm:ss बजे',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, Aको h:mm बजे',
'LLLL' => 'dddd, D MMMM YYYY, Aको h:mm बजे',
],
'calendar' => [
'sameDay' => '[आज] LT',
'nextDay' => '[भोलि] LT',
'nextWeek' => '[आउँदो] dddd[,] LT',
'lastDay' => '[हिजो] LT',
'lastWeek' => '[गएको] dddd[,] LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 3) {
return 'राति';
}
if ($hour < 12) {
return 'बिहान';
}
if ($hour < 16) {
return 'दिउँसो';
}
if ($hour < 20) {
return 'साँझ';
}
return 'राति';
},
'months' => ['जनवरी', 'फेब्रुवरी', 'मार्च', 'अप्रिल', 'मई', 'जुन', 'जुलाई', 'अगष्ट', 'सेप्टेम्बर', 'अक्टोबर', 'नोभेम्बर', 'डिसेम्बर'],
'months_short' => ['जन.', 'फेब्रु.', 'मार्च', 'अप्रि.', 'मई', 'जुन', 'जुलाई.', 'अग.', 'सेप्ट.', 'अक्टो.', 'नोभे.', 'डिसे.'],
'weekdays' => ['आइतबार', 'सोमबार', 'मङ्गलबार', 'बुधबार', 'बिहिबार', 'शुक्रबार', 'शनिबार'],
'weekdays_short' => ['आइत.', 'सोम.', 'मङ्गल.', 'बुध.', 'बिहि.', 'शुक्र.', 'शनि.'],
'weekdays_min' => ['आ.', 'सो.', 'मं.', 'बु.', 'बि.', 'शु.', 'श.'],
'list' => [', ', ' र '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
];
src/Carbon/Lang/ne_IN.php 0000644 00000002256 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ne.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'yy/M/d',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D, h:mm a',
'LLLL' => 'YYYY MMMM D, dddd, h:mm a',
],
'months' => ['जनवरी', 'फेब्रुअरी', 'मार्च', 'अप्रिल', 'मे', 'जुन', 'जुलाई', 'अगस्ट', 'सेप्टेम्बर', 'अक्टोबर', 'नोभेम्बर', 'डिसेम्बर'],
'months_short' => ['जनवरी', 'फेब्रुअरी', 'मार्च', 'अप्रिल', 'मे', 'जुन', 'जुलाई', 'अगस्ट', 'सेप्टेम्बर', 'अक्टोबर', 'नोभेम्बर', 'डिसेम्बर'],
'weekend' => [0, 0],
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
]);
src/Carbon/Lang/ne_NP.php 0000644 00000000413 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ne.php';
src/Carbon/Lang/nhn.php 0000644 00000000517 14753612052 0010724 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/nhn_MX.php';
src/Carbon/Lang/nhn_MX.php 0000644 00000003460 14753612052 0011330 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['enero', 'febrero', 'marzo', 'abril', 'mayo', 'junio', 'julio', 'agosto', 'septiembre', 'octubre', 'noviembre', 'diciembre'],
'months_short' => ['ene', 'feb', 'mar', 'abr', 'may', 'jun', 'jul', 'ago', 'sep', 'oct', 'nov', 'dic'],
'weekdays' => ['teoilhuitl', 'ceilhuitl', 'omeilhuitl', 'yeilhuitl', 'nahuilhuitl', 'macuililhuitl', 'chicuaceilhuitl'],
'weekdays_short' => ['teo', 'cei', 'ome', 'yei', 'nau', 'mac', 'chi'],
'weekdays_min' => ['teo', 'cei', 'ome', 'yei', 'nau', 'mac', 'chi'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'month' => ':count metztli', // less reliable
'm' => ':count metztli', // less reliable
'a_month' => ':count metztli', // less reliable
'week' => ':count tonalli', // less reliable
'w' => ':count tonalli', // less reliable
'a_week' => ':count tonalli', // less reliable
'day' => ':count tonatih', // less reliable
'd' => ':count tonatih', // less reliable
'a_day' => ':count tonatih', // less reliable
'minute' => ':count toltecayotl', // less reliable
'min' => ':count toltecayotl', // less reliable
'a_minute' => ':count toltecayotl', // less reliable
'second' => ':count ome', // less reliable
's' => ':count ome', // less reliable
'a_second' => ':count ome', // less reliable
'year' => ':count xihuitl',
'y' => ':count xihuitl',
'a_year' => ':count xihuitl',
]);
src/Carbon/Lang/niu.php 0000644 00000000517 14753612052 0010734 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/niu_NU.php';
src/Carbon/Lang/niu_NU.php 0000644 00000003217 14753612052 0011336 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RockET Systems Emani Fakaotimanava-Lui emani@niue.nu
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Ianuali', 'Fepuali', 'Masi', 'Apelila', 'Me', 'Iuni', 'Iulai', 'Aokuso', 'Sepetema', 'Oketopa', 'Novema', 'Tesemo'],
'months_short' => ['Ian', 'Fep', 'Mas', 'Ape', 'Me', 'Iun', 'Iul', 'Aok', 'Sep', 'Oke', 'Nov', 'Tes'],
'weekdays' => ['Aho Tapu', 'Aho Gofua', 'Aho Ua', 'Aho Lotu', 'Aho Tuloto', 'Aho Falaile', 'Aho Faiumu'],
'weekdays_short' => ['Tapu', 'Gofua', 'Ua', 'Lotu', 'Tuloto', 'Falaile', 'Faiumu'],
'weekdays_min' => ['Tapu', 'Gofua', 'Ua', 'Lotu', 'Tuloto', 'Falaile', 'Faiumu'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count tau',
'y' => ':count tau',
'a_year' => ':count tau',
'month' => ':count mahina',
'm' => ':count mahina',
'a_month' => ':count mahina',
'week' => ':count faahi tapu',
'w' => ':count faahi tapu',
'a_week' => ':count faahi tapu',
'day' => ':count aho',
'd' => ':count aho',
'a_day' => ':count aho',
'hour' => ':count e tulā',
'h' => ':count e tulā',
'a_hour' => ':count e tulā',
'minute' => ':count minuti',
'min' => ':count minuti',
'a_minute' => ':count minuti',
'second' => ':count sekone',
's' => ':count sekone',
'a_second' => ':count sekone',
]);
src/Carbon/Lang/nl.php 0000644 00000007020 14753612052 0010546 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Roy
* - Stephan
* - François B
* - Tim Fish
* - Kevin Huang
* - Jacob Middag
* - JD Isaacks
* - Roy
* - Stephan
* - François B
* - Tim Fish
* - Jacob Middag
* - JD Isaacks
* - Propaganistas
* - MegaXLR
* - adriaanzon
* - MonkeyPhysics
* - JeroenG
* - RikSomers
* - proclame
* - Rik de Groot (hwdegroot)
*/
return [
'year' => ':count jaar|:count jaar',
'a_year' => 'een jaar|:count jaar',
'y' => ':countj',
'month' => ':count maand|:count maanden',
'a_month' => 'een maand|:count maanden',
'm' => ':countmnd',
'week' => ':count week|:count weken',
'a_week' => 'een week|:count weken',
'w' => ':countw',
'day' => ':count dag|:count dagen',
'a_day' => 'een dag|:count dagen',
'd' => ':countd',
'hour' => ':count uur|:count uur',
'a_hour' => 'een uur|:count uur',
'h' => ':countu',
'minute' => ':count minuut|:count minuten',
'a_minute' => 'een minuut|:count minuten',
'min' => ':countmin',
'second' => ':count seconde|:count seconden',
'a_second' => 'een paar seconden|:count seconden',
's' => ':counts',
'ago' => ':time geleden',
'from_now' => 'over :time',
'after' => ':time later',
'before' => ':time eerder',
'diff_now' => 'nu',
'diff_today' => 'vandaag',
'diff_today_regexp' => 'vandaag(?:\\s+om)?',
'diff_yesterday' => 'gisteren',
'diff_yesterday_regexp' => 'gisteren(?:\\s+om)?',
'diff_tomorrow' => 'morgen',
'diff_tomorrow_regexp' => 'morgen(?:\\s+om)?',
'diff_after_tomorrow' => 'overmorgen',
'diff_before_yesterday' => 'eergisteren',
'period_recurrences' => ':count keer',
'period_interval' => static function (string $interval = '') {
/** @var string $output */
$output = preg_replace('/^(een|één|1)\s+/u', '', $interval);
if (preg_match('/^(een|één|1)( jaar|j| uur|u)/u', $interval)) {
return "elk $output";
}
return "elke $output";
},
'period_start_date' => 'van :date',
'period_end_date' => 'tot :date',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD-MM-YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[vandaag om] LT',
'nextDay' => '[morgen om] LT',
'nextWeek' => 'dddd [om] LT',
'lastDay' => '[gisteren om] LT',
'lastWeek' => '[afgelopen] dddd [om] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
return $number.(($number === 1 || $number === 8 || $number >= 20) ? 'ste' : 'de');
},
'months' => ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
'mmm_suffix' => '.',
'weekdays' => ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
'weekdays_short' => ['zo.', 'ma.', 'di.', 'wo.', 'do.', 'vr.', 'za.'],
'weekdays_min' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' en '],
'meridiem' => ['\'s ochtends', '\'s middags'],
];
src/Carbon/Lang/nl_AW.php 0000644 00000001732 14753612052 0011141 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Free Software Foundation, Inc. bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/nl.php', [
'formats' => [
'L' => 'DD-MM-YY',
],
'months' => ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
'weekdays' => ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
'weekdays_short' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
'weekdays_min' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/nl_BE.php 0000644 00000000756 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Roy
* - Stephan
* - François B
* - Tim Fish
* - Kevin Huang
* - Jacob Middag
* - JD Isaacks
* - Propaganistas
*/
return array_replace_recursive(require __DIR__.'/nl.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
]);
src/Carbon/Lang/nl_BQ.php 0000644 00000000413 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/nl.php';
src/Carbon/Lang/nl_CW.php 0000644 00000000413 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/nl.php';
src/Carbon/Lang/nl_NL.php 0000644 00000001612 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/nl.php', [
'months' => ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
'months_short' => ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
'weekdays' => ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],
'weekdays_short' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
'weekdays_min' => ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/nl_SR.php 0000644 00000000413 14753612052 0011151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/nl.php';
src/Carbon/Lang/nl_SX.php 0000644 00000000413 14753612052 0011157 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/nl.php';
src/Carbon/Lang/nmg.php 0000644 00000002321 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['maná', 'kugú'],
'weekdays' => ['sɔ́ndɔ', 'mɔ́ndɔ', 'sɔ́ndɔ mafú mába', 'sɔ́ndɔ mafú málal', 'sɔ́ndɔ mafú mána', 'mabágá má sukul', 'sásadi'],
'weekdays_short' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'mbs', 'sas'],
'weekdays_min' => ['sɔ́n', 'mɔ́n', 'smb', 'sml', 'smn', 'mbs', 'sas'],
'months' => ['ngwɛn matáhra', 'ngwɛn ńmba', 'ngwɛn ńlal', 'ngwɛn ńna', 'ngwɛn ńtan', 'ngwɛn ńtuó', 'ngwɛn hɛmbuɛrí', 'ngwɛn lɔmbi', 'ngwɛn rɛbvuâ', 'ngwɛn wum', 'ngwɛn wum navǔr', 'krísimin'],
'months_short' => ['ng1', 'ng2', 'ng3', 'ng4', 'ng5', 'ng6', 'ng7', 'ng8', 'ng9', 'ng10', 'ng11', 'kris'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/nn.php 0000644 00000005121 14753612052 0010550 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Alexander Tømmerås
* - Øystein
* - JD Isaacks
* - Gaute Hvoslef Kvalnes (gaute)
*/
return [
'year' => ':count år',
'a_year' => 'eit år|:count år',
'y' => ':count år',
'month' => ':count månad|:count månader',
'a_month' => 'ein månad|:count månader',
'm' => ':count md',
'week' => ':count veke|:count veker',
'a_week' => 'ei veke|:count veker',
'w' => ':countv',
'day' => ':count dag|:count dagar',
'a_day' => 'ein dag|:count dagar',
'd' => ':countd',
'hour' => ':count time|:count timar',
'a_hour' => 'ein time|:count timar',
'h' => ':countt',
'minute' => ':count minutt',
'a_minute' => 'eit minutt|:count minutt',
'min' => ':countm',
'second' => ':count sekund',
'a_second' => 'nokre sekund|:count sekund',
's' => ':counts',
'ago' => ':time sidan',
'from_now' => 'om :time',
'after' => ':time etter',
'before' => ':time før',
'diff_today' => 'I dag',
'diff_yesterday' => 'I går',
'diff_yesterday_regexp' => 'I går(?:\\s+klokka)?',
'diff_tomorrow' => 'I morgon',
'diff_tomorrow_regexp' => 'I morgon(?:\\s+klokka)?',
'diff_today_regexp' => 'I dag(?:\\s+klokka)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY [kl.] H:mm',
'LLLL' => 'dddd D. MMMM YYYY [kl.] HH:mm',
],
'calendar' => [
'sameDay' => '[I dag klokka] LT',
'nextDay' => '[I morgon klokka] LT',
'nextWeek' => 'dddd [klokka] LT',
'lastDay' => '[I går klokka] LT',
'lastWeek' => '[Føregåande] dddd [klokka] LT',
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['januar', 'februar', 'mars', 'april', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],
'weekdays' => ['sundag', 'måndag', 'tysdag', 'onsdag', 'torsdag', 'fredag', 'laurdag'],
'weekdays_short' => ['sun', 'mån', 'tys', 'ons', 'tor', 'fre', 'lau'],
'weekdays_min' => ['su', 'må', 'ty', 'on', 'to', 'fr', 'la'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' og '],
'meridiem' => ['f.m.', 'e.m.'],
];
src/Carbon/Lang/nn_NO.php 0000644 00000000413 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/nn.php';
src/Carbon/Lang/nnh.php 0000644 00000002246 14753612052 0010725 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['mbaʼámbaʼ', 'ncwònzém'],
'weekdays' => null,
'weekdays_short' => ['lyɛʼɛ́ sẅíŋtè', 'mvfò lyɛ̌ʼ', 'mbɔ́ɔntè mvfò lyɛ̌ʼ', 'tsètsɛ̀ɛ lyɛ̌ʼ', 'mbɔ́ɔntè tsetsɛ̀ɛ lyɛ̌ʼ', 'mvfò màga lyɛ̌ʼ', 'màga lyɛ̌ʼ'],
'weekdays_min' => null,
'months' => null,
'months_short' => ['saŋ tsetsɛ̀ɛ lùm', 'saŋ kàg ngwóŋ', 'saŋ lepyè shúm', 'saŋ cÿó', 'saŋ tsɛ̀ɛ cÿó', 'saŋ njÿoláʼ', 'saŋ tyɛ̀b tyɛ̀b mbʉ̀ŋ', 'saŋ mbʉ̀ŋ', 'saŋ ngwɔ̀ʼ mbÿɛ', 'saŋ tàŋa tsetsáʼ', 'saŋ mejwoŋó', 'saŋ lùm'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/yy',
'LL' => 'D MMM, YYYY',
'LLL' => '[lyɛ]̌ʼ d [na] MMMM, YYYY HH:mm',
'LLLL' => 'dddd , [lyɛ]̌ʼ d [na] MMMM, YYYY HH:mm',
],
]);
src/Carbon/Lang/no.php 0000644 00000001156 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Daniel S. Billing
* - Paul
* - Jimmie Johansson
* - Jens Herlevsen
*/
return array_replace_recursive(require __DIR__.'/nb.php', [
'formats' => [
'LLL' => 'D. MMMM YYYY HH:mm',
'LLLL' => 'dddd, D. MMMM YYYY [kl.] HH:mm',
],
'calendar' => [
'nextWeek' => 'på dddd [kl.] LT',
'lastWeek' => '[i] dddd[s kl.] LT',
],
]);
src/Carbon/Lang/nr.php 0000644 00000000516 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/nr_ZA.php';
src/Carbon/Lang/nr_ZA.php 0000644 00000002021 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Janabari', 'uFeberbari', 'uMatjhi', 'u-Apreli', 'Meyi', 'Juni', 'Julayi', 'Arhostosi', 'Septemba', 'Oktoba', 'Usinyikhaba', 'Disemba'],
'months_short' => ['Jan', 'Feb', 'Mat', 'Apr', 'Mey', 'Jun', 'Jul', 'Arh', 'Sep', 'Okt', 'Usi', 'Dis'],
'weekdays' => ['uSonto', 'uMvulo', 'uLesibili', 'lesithathu', 'uLesine', 'ngoLesihlanu', 'umGqibelo'],
'weekdays_short' => ['Son', 'Mvu', 'Bil', 'Tha', 'Ne', 'Hla', 'Gqi'],
'weekdays_min' => ['Son', 'Mvu', 'Bil', 'Tha', 'Ne', 'Hla', 'Gqi'],
'day_of_first_week_of_year' => 1,
'first_day_of_week' => 0,
]);
src/Carbon/Lang/nso.php 0000644 00000000517 14753612052 0010740 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/nso_ZA.php';
src/Carbon/Lang/nso_ZA.php 0000644 00000003264 14753612052 0011334 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Janaware', 'Febereware', 'Matšhe', 'Aprele', 'Mei', 'June', 'Julae', 'Agostose', 'Setemere', 'Oktobere', 'Nofemere', 'Disemere'],
'months_short' => ['Jan', 'Feb', 'Mat', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Set', 'Okt', 'Nof', 'Dis'],
'weekdays' => ['LaMorena', 'Mošupologo', 'Labobedi', 'Laboraro', 'Labone', 'Labohlano', 'Mokibelo'],
'weekdays_short' => ['Son', 'Moš', 'Bed', 'Rar', 'Ne', 'Hla', 'Mok'],
'weekdays_min' => ['Son', 'Moš', 'Bed', 'Rar', 'Ne', 'Hla', 'Mok'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => ':count ngwaga',
'y' => ':count ngwaga',
'a_year' => ':count ngwaga',
'month' => ':count Kgwedi',
'm' => ':count Kgwedi',
'a_month' => ':count Kgwedi',
'week' => ':count Beke',
'w' => ':count Beke',
'a_week' => ':count Beke',
'day' => ':count Letšatši',
'd' => ':count Letšatši',
'a_day' => ':count Letšatši',
'hour' => ':count Iri',
'h' => ':count Iri',
'a_hour' => ':count Iri',
'minute' => ':count Motsotso',
'min' => ':count Motsotso',
'a_minute' => ':count Motsotso',
'second' => ':count motsotswana',
's' => ':count motsotswana',
'a_second' => ':count motsotswana',
]);
src/Carbon/Lang/nus.php 0000644 00000002675 14753612052 0010755 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['RW', 'TŊ'],
'weekdays' => ['Cäŋ kuɔth', 'Jiec la̱t', 'Rɛw lätni', 'Diɔ̱k lätni', 'Ŋuaan lätni', 'Dhieec lätni', 'Bäkɛl lätni'],
'weekdays_short' => ['Cäŋ', 'Jiec', 'Rɛw', 'Diɔ̱k', 'Ŋuaan', 'Dhieec', 'Bäkɛl'],
'weekdays_min' => ['Cäŋ', 'Jiec', 'Rɛw', 'Diɔ̱k', 'Ŋuaan', 'Dhieec', 'Bäkɛl'],
'months' => ['Tiop thar pɛt', 'Pɛt', 'Duɔ̱ɔ̱ŋ', 'Guak', 'Duät', 'Kornyoot', 'Pay yie̱tni', 'Tho̱o̱r', 'Tɛɛr', 'Laath', 'Kur', 'Tio̱p in di̱i̱t'],
'months_short' => ['Tiop', 'Pɛt', 'Duɔ̱ɔ̱', 'Guak', 'Duä', 'Kor', 'Pay', 'Thoo', 'Tɛɛ', 'Laa', 'Kur', 'Tid'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd D MMMM YYYY h:mm a',
],
'year' => ':count jiök', // less reliable
'y' => ':count jiök', // less reliable
'a_year' => ':count jiök', // less reliable
'month' => ':count pay', // less reliable
'm' => ':count pay', // less reliable
'a_month' => ':count pay', // less reliable
]);
src/Carbon/Lang/nyn.php 0000644 00000002146 14753612052 0010745 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'weekdays' => ['Sande', 'Orwokubanza', 'Orwakabiri', 'Orwakashatu', 'Orwakana', 'Orwakataano', 'Orwamukaaga'],
'weekdays_short' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
'weekdays_min' => ['SAN', 'ORK', 'OKB', 'OKS', 'OKN', 'OKT', 'OMK'],
'months' => ['Okwokubanza', 'Okwakabiri', 'Okwakashatu', 'Okwakana', 'Okwakataana', 'Okwamukaaga', 'Okwamushanju', 'Okwamunaana', 'Okwamwenda', 'Okwaikumi', 'Okwaikumi na kumwe', 'Okwaikumi na ibiri'],
'months_short' => ['KBZ', 'KBR', 'KST', 'KKN', 'KTN', 'KMK', 'KMS', 'KMN', 'KMW', 'KKM', 'KNK', 'KNB'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/oc.php 0000644 00000007176 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Quentí
*/
// @codeCoverageIgnoreStart
use Symfony\Component\Translation\PluralizationRules;
if (class_exists('Symfony\\Component\\Translation\\PluralizationRules')) {
PluralizationRules::set(static function ($number) {
return $number == 1 ? 0 : 1;
}, 'oc');
}
// @codeCoverageIgnoreEnd
return [
'year' => ':count an|:count ans',
'a_year' => 'un an|:count ans',
'y' => ':count an|:count ans',
'month' => ':count mes|:count meses',
'a_month' => 'un mes|:count meses',
'm' => ':count mes|:count meses',
'week' => ':count setmana|:count setmanas',
'a_week' => 'una setmana|:count setmanas',
'w' => ':count setmana|:count setmanas',
'day' => ':count jorn|:count jorns',
'a_day' => 'un jorn|:count jorns',
'd' => ':count jorn|:count jorns',
'hour' => ':count ora|:count oras',
'a_hour' => 'una ora|:count oras',
'h' => ':count ora|:count oras',
'minute' => ':count minuta|:count minutas',
'a_minute' => 'una minuta|:count minutas',
'min' => ':count minuta|:count minutas',
'second' => ':count segonda|:count segondas',
'a_second' => 'una segonda|:count segondas',
's' => ':count segonda|:count segondas',
'ago' => 'fa :time',
'from_now' => 'd\'aquí :time',
'after' => ':time aprèp',
'before' => ':time abans',
'diff_now' => 'ara meteis',
'diff_today' => 'Uèi',
'diff_today_regexp' => 'Uèi(?:\\s+a)?',
'diff_yesterday' => 'ièr',
'diff_yesterday_regexp' => 'Ièr(?:\\s+a)?',
'diff_tomorrow' => 'deman',
'diff_tomorrow_regexp' => 'Deman(?:\\s+a)?',
'diff_before_yesterday' => 'ièr delà',
'diff_after_tomorrow' => 'deman passat',
'period_recurrences' => ':count còp|:count còps',
'period_interval' => 'cada :interval',
'period_start_date' => 'de :date',
'period_end_date' => 'fins a :date',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM [de] YYYY',
'LLL' => 'D MMMM [de] YYYY [a] H:mm',
'LLLL' => 'dddd D MMMM [de] YYYY [a] H:mm',
],
'calendar' => [
'sameDay' => '[Uèi a] LT',
'nextDay' => '[Deman a] LT',
'nextWeek' => 'dddd [a] LT',
'lastDay' => '[Ièr a] LT',
'lastWeek' => 'dddd [passat a] LT',
'sameElse' => 'L',
],
'months' => ['de genièr', 'de febrièr', 'de març', 'd\'abrial', 'de mai', 'de junh', 'de julhet', 'd\'agost', 'de setembre', 'd’octòbre', 'de novembre', 'de decembre'],
'months_standalone' => ['genièr', 'febrièr', 'març', 'abrial', 'mai', 'junh', 'julh', 'agost', 'setembre', 'octòbre', 'novembre', 'decembre'],
'months_short' => ['gen.', 'feb.', 'març', 'abr.', 'mai', 'junh', 'julh', 'ago.', 'sep.', 'oct.', 'nov.', 'dec.'],
'weekdays' => ['dimenge', 'diluns', 'dimars', 'dimècres', 'dijòus', 'divendres', 'dissabte'],
'weekdays_short' => ['dg', 'dl', 'dm', 'dc', 'dj', 'dv', 'ds'],
'weekdays_min' => ['dg', 'dl', 'dm', 'dc', 'dj', 'dv', 'ds'],
'ordinal' => static function ($number, string $period = '') {
$ordinal = [1 => 'èr', 2 => 'nd'][(int) $number] ?? 'en';
// feminine for year, week, hour, minute, second
if (preg_match('/^[yYwWhHgGis]$/', $period)) {
$ordinal .= 'a';
}
return $number.$ordinal;
},
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' e '],
];
src/Carbon/Lang/oc_FR.php 0000644 00000000413 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/oc.php';
src/Carbon/Lang/om.php 0000644 00000003616 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation & Sagalee Oromoo Publishing Co. Inc. locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'dd-MMM-YYYY',
'LLL' => 'dd MMMM YYYY HH:mm',
'LLLL' => 'dddd, MMMM D, YYYY HH:mm',
],
'months' => ['Amajjii', 'Guraandhala', 'Bitooteessa', 'Elba', 'Caamsa', 'Waxabajjii', 'Adooleessa', 'Hagayya', 'Fuulbana', 'Onkololeessa', 'Sadaasa', 'Muddee'],
'months_short' => ['Ama', 'Gur', 'Bit', 'Elb', 'Cam', 'Wax', 'Ado', 'Hag', 'Ful', 'Onk', 'Sad', 'Mud'],
'weekdays' => ['Dilbata', 'Wiixata', 'Qibxata', 'Roobii', 'Kamiisa', 'Jimaata', 'Sanbata'],
'weekdays_short' => ['Dil', 'Wix', 'Qib', 'Rob', 'Kam', 'Jim', 'San'],
'weekdays_min' => ['Dil', 'Wix', 'Qib', 'Rob', 'Kam', 'Jim', 'San'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['WD', 'WB'],
'year' => 'wggoota :count',
'y' => 'wggoota :count',
'a_year' => 'wggoota :count',
'month' => 'ji’a :count',
'm' => 'ji’a :count',
'a_month' => 'ji’a :count',
'week' => 'torban :count',
'w' => 'torban :count',
'a_week' => 'torban :count',
'day' => 'guyyaa :count',
'd' => 'guyyaa :count',
'a_day' => 'guyyaa :count',
'hour' => 'saʼaatii :count',
'h' => 'saʼaatii :count',
'a_hour' => 'saʼaatii :count',
'minute' => 'daqiiqaa :count',
'min' => 'daqiiqaa :count',
'a_minute' => 'daqiiqaa :count',
'second' => 'sekoondii :count',
's' => 'sekoondii :count',
'a_second' => 'sekoondii :count',
]);
src/Carbon/Lang/om_ET.php 0000644 00000000413 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/om.php';
src/Carbon/Lang/om_KE.php 0000644 00000000517 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/om.php', [
'day_of_first_week_of_year' => 0,
]);
src/Carbon/Lang/or.php 0000644 00000000516 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/or_IN.php';
src/Carbon/Lang/or_IN.php 0000644 00000006417 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM AP Linux Technology Center, Yamato Software Laboratory bug-glibc@gnu.org
*/
return [
'diff_now' => 'ବର୍ତ୍ତମାନ',
'diff_yesterday' => 'ଗତକାଲି',
'diff_tomorrow' => 'ଆସନ୍ତାକାଲି',
'formats' => [
'LT' => 'Oh:Om A',
'LTS' => 'Oh:Om:Os A',
'L' => 'OD-OM-OY',
'LL' => 'OD MMMM OY',
'LLL' => 'OD MMMM OY Oh:Om A',
'LLLL' => 'dddd OD MMMM OY Oh:Om A',
],
'months' => ['ଜାନୁଆରୀ', 'ଫେବୃଆରୀ', 'ମାର୍ଚ୍ଚ', 'ଅପ୍ରେଲ', 'ମଇ', 'ଜୁନ', 'ଜୁଲାଇ', 'ଅଗଷ୍ଟ', 'ସେପ୍ଟେମ୍ବର', 'ଅକ୍ଟୋବର', 'ନଭେମ୍ବର', 'ଡିସେମ୍ବର'],
'months_short' => ['ଜାନୁଆରୀ', 'ଫେବୃଆରୀ', 'ମାର୍ଚ୍ଚ', 'ଅପ୍ରେଲ', 'ମଇ', 'ଜୁନ', 'ଜୁଲାଇ', 'ଅଗଷ୍ଟ', 'ସେପ୍ଟେମ୍ବର', 'ଅକ୍ଟୋବର', 'ନଭେମ୍ବର', 'ଡିସେମ୍ବର'],
'weekdays' => ['ରବିବାର', 'ସୋମବାର', 'ମଙ୍ଗଳବାର', 'ବୁଧବାର', 'ଗୁରୁବାର', 'ଶୁକ୍ରବାର', 'ଶନିବାର'],
'weekdays_short' => ['ରବି', 'ସୋମ', 'ମଙ୍ଗଳ', 'ବୁଧ', 'ଗୁରୁ', 'ଶୁକ୍ର', 'ଶନି'],
'weekdays_min' => ['ରବି', 'ସୋମ', 'ମଙ୍ଗଳ', 'ବୁଧ', 'ଗୁରୁ', 'ଶୁକ୍ର', 'ଶନି'],
'day_of_first_week_of_year' => 1,
'alt_numbers' => ['୦', '୧', '୨', '୩', '୪', '୫', '୬', '୭', '୮', '୯', '୧୦', '୧୧', '୧୨', '୧୩', '୧୪', '୧୫', '୧୬', '୧୭', '୧୮', '୧୯', '୨୦', '୨୧', '୨୨', '୨୩', '୨୪', '୨୫', '୨୬', '୨୭', '୨୮', '୨୯', '୩୦', '୩୧', '୩୨', '୩୩', '୩୪', '୩୫', '୩୬', '୩୭', '୩୮', '୩୯', '୪୦', '୪୧', '୪୨', '୪୩', '୪୪', '୪୫', '୪୬', '୪୭', '୪୮', '୪୯', '୫୦', '୫୧', '୫୨', '୫୩', '୫୪', '୫୫', '୫୬', '୫୭', '୫୮', '୫୯', '୬୦', '୬୧', '୬୨', '୬୩', '୬୪', '୬୫', '୬୬', '୬୭', '୬୮', '୬୯', '୭୦', '୭୧', '୭୨', '୭୩', '୭୪', '୭୫', '୭୬', '୭୭', '୭୮', '୭୯', '୮୦', '୮୧', '୮୨', '୮୩', '୮୪', '୮୫', '୮୬', '୮୭', '୮୮', '୮୯', '୯୦', '୯୧', '୯୨', '୯୩', '୯୪', '୯୫', '୯୬', '୯୭', '୯୮', '୯୯'],
'year' => ':count ବର୍ଷ',
'y' => ':count ବ.',
'month' => ':count ମାସ',
'm' => ':count ମା.',
'week' => ':count ସପ୍ତାହ',
'w' => ':count ସପ୍ତା.',
'day' => ':count ଦିନ',
'd' => ':count ଦିନ',
'hour' => ':count ଘଣ୍ତ',
'h' => ':count ଘ.',
'minute' => ':count ମିନଟ',
'min' => ':count ମି.',
'second' => ':count ସେକଣ୍ଢ',
's' => ':count ସେ.',
'ago' => ':time ପୂର୍ବେ',
'from_now' => ':timeରେ',
];
src/Carbon/Lang/os.php 0000644 00000000516 14753612052 0010561 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/os_RU.php';
src/Carbon/Lang/os_RU.php 0000644 00000003707 14753612052 0011174 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['январы', 'февралы', 'мартъийы', 'апрелы', 'майы', 'июны', 'июлы', 'августы', 'сентябры', 'октябры', 'ноябры', 'декабры'],
'months_short' => ['Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'],
'weekdays' => ['Хуыцаубон', 'Къуырисæр', 'Дыццæг', 'Æртыццæг', 'Цыппæрæм', 'Майрæмбон', 'Сабат'],
'weekdays_short' => ['Хцб', 'Крс', 'Дцг', 'Æрт', 'Цпр', 'Мрб', 'Сбт'],
'weekdays_min' => ['Хцб', 'Крс', 'Дцг', 'Æрт', 'Цпр', 'Мрб', 'Сбт'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'minute' => ':count гыццыл', // less reliable
'min' => ':count гыццыл', // less reliable
'a_minute' => ':count гыццыл', // less reliable
'second' => ':count æндæр', // less reliable
's' => ':count æндæр', // less reliable
'a_second' => ':count æндæр', // less reliable
'year' => ':count аз',
'y' => ':count аз',
'a_year' => ':count аз',
'month' => ':count мӕй',
'm' => ':count мӕй',
'a_month' => ':count мӕй',
'week' => ':count къуыри',
'w' => ':count къуыри',
'a_week' => ':count къуыри',
'day' => ':count бон',
'd' => ':count бон',
'a_day' => ':count бон',
'hour' => ':count сахат',
'h' => ':count сахат',
'a_hour' => ':count сахат',
]);
src/Carbon/Lang/pa.php 0000644 00000006007 14753612052 0010541 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Tsutomu Kuroda
* - Punjab
*/
return [
'year' => 'ਇੱਕ ਸਾਲ|:count ਸਾਲ',
'month' => 'ਇੱਕ ਮਹੀਨਾ|:count ਮਹੀਨੇ',
'week' => 'ਹਫਤਾ|:count ਹਫ਼ਤੇ',
'day' => 'ਇੱਕ ਦਿਨ|:count ਦਿਨ',
'hour' => 'ਇੱਕ ਘੰਟਾ|:count ਘੰਟੇ',
'minute' => 'ਇਕ ਮਿੰਟ|:count ਮਿੰਟ',
'second' => 'ਕੁਝ ਸਕਿੰਟ|:count ਸਕਿੰਟ',
'ago' => ':time ਪਹਿਲਾਂ',
'from_now' => ':time ਵਿੱਚ',
'before' => ':time ਤੋਂ ਪਹਿਲਾਂ',
'after' => ':time ਤੋਂ ਬਾਅਦ',
'diff_now' => 'ਹੁਣ',
'diff_today' => 'ਅਜ',
'diff_yesterday' => 'ਕਲ',
'diff_tomorrow' => 'ਕਲ',
'formats' => [
'LT' => 'A h:mm ਵਜੇ',
'LTS' => 'A h:mm:ss ਵਜੇ',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm ਵਜੇ',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm ਵਜੇ',
],
'calendar' => [
'sameDay' => '[ਅਜ] LT',
'nextDay' => '[ਕਲ] LT',
'nextWeek' => '[ਅਗਲਾ] dddd, LT',
'lastDay' => '[ਕਲ] LT',
'lastWeek' => '[ਪਿਛਲੇ] dddd, LT',
'sameElse' => 'L',
],
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'ਰਾਤ';
}
if ($hour < 10) {
return 'ਸਵੇਰ';
}
if ($hour < 17) {
return 'ਦੁਪਹਿਰ';
}
if ($hour < 20) {
return 'ਸ਼ਾਮ';
}
return 'ਰਾਤ';
},
'months' => ['ਜਨਵਰੀ', 'ਫ਼ਰਵਰੀ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈਲ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾਈ', 'ਅਗਸਤ', 'ਸਤੰਬਰ', 'ਅਕਤੂਬਰ', 'ਨਵੰਬਰ', 'ਦਸੰਬਰ'],
'months_short' => ['ਜਨਵਰੀ', 'ਫ਼ਰਵਰੀ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈਲ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾਈ', 'ਅਗਸਤ', 'ਸਤੰਬਰ', 'ਅਕਤੂਬਰ', 'ਨਵੰਬਰ', 'ਦਸੰਬਰ'],
'weekdays' => ['ਐਤਵਾਰ', 'ਸੋਮਵਾਰ', 'ਮੰਗਲਵਾਰ', 'ਬੁਧਵਾਰ', 'ਵੀਰਵਾਰ', 'ਸ਼ੁੱਕਰਵਾਰ', 'ਸ਼ਨੀਚਰਵਾਰ'],
'weekdays_short' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗਲ', 'ਬੁਧ', 'ਵੀਰ', 'ਸ਼ੁਕਰ', 'ਸ਼ਨੀ'],
'weekdays_min' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗਲ', 'ਬੁਧ', 'ਵੀਰ', 'ਸ਼ੁਕਰ', 'ਸ਼ਨੀ'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' ਅਤੇ '],
'weekend' => [0, 0],
'alt_numbers' => ['੦', '੧', '੨', '੩', '੪', '੫', '੬', '੭', '੮', '੯'],
];
src/Carbon/Lang/pa_Arab.php 0000644 00000002300 14753612052 0011456 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ur.php', [
'weekdays' => ['اتوار', 'پیر', 'منگل', 'بُدھ', 'جمعرات', 'جمعہ', 'ہفتہ'],
'weekdays_short' => ['اتوار', 'پیر', 'منگل', 'بُدھ', 'جمعرات', 'جمعہ', 'ہفتہ'],
'weekdays_min' => ['اتوار', 'پیر', 'منگل', 'بُدھ', 'جمعرات', 'جمعہ', 'ہفتہ'],
'months' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئ', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'months_short' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئ', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd, DD MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/pa_Guru.php 0000644 00000002630 14753612052 0011541 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/pa.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D/M/yy',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY, h:mm a',
'LLLL' => 'dddd, D MMMM YYYY, h:mm a',
],
'months' => ['ਜਨਵਰੀ', 'ਫ਼ਰਵਰੀ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈਲ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾਈ', 'ਅਗਸਤ', 'ਸਤੰਬਰ', 'ਅਕਤੂਬਰ', 'ਨਵੰਬਰ', 'ਦਸੰਬਰ'],
'months_short' => ['ਜਨ', 'ਫ਼ਰ', 'ਮਾਰਚ', 'ਅਪ੍ਰੈ', 'ਮਈ', 'ਜੂਨ', 'ਜੁਲਾ', 'ਅਗ', 'ਸਤੰ', 'ਅਕਤੂ', 'ਨਵੰ', 'ਦਸੰ'],
'weekdays' => ['ਐਤਵਾਰ', 'ਸੋਮਵਾਰ', 'ਮੰਗਲਵਾਰ', 'ਬੁੱਧਵਾਰ', 'ਵੀਰਵਾਰ', 'ਸ਼ੁੱਕਰਵਾਰ', 'ਸ਼ਨਿੱਚਰਵਾਰ'],
'weekdays_short' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗਲ', 'ਬੁੱਧ', 'ਵੀਰ', 'ਸ਼ੁੱਕਰ', 'ਸ਼ਨਿੱਚਰ'],
'weekdays_min' => ['ਐਤ', 'ਸੋਮ', 'ਮੰਗ', 'ਬੁੱਧ', 'ਵੀਰ', 'ਸ਼ੁੱਕ', 'ਸ਼ਨਿੱ'],
'weekend' => [0, 0],
]);
src/Carbon/Lang/pa_IN.php 0000644 00000000543 14753612052 0011126 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Guo Xiang Tan
* - Josh Soref
* - Ash
* - harpreetkhalsagtbit
*/
return require __DIR__.'/pa.php';
src/Carbon/Lang/pa_PK.php 0000644 00000002244 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['جنوري', 'فروري', 'مارچ', 'اپريل', 'مٓی', 'جون', 'جولاي', 'اگست', 'ستمبر', 'اكتوبر', 'نومبر', 'دسمبر'],
'months_short' => ['جنوري', 'فروري', 'مارچ', 'اپريل', 'مٓی', 'جون', 'جولاي', 'اگست', 'ستمبر', 'اكتوبر', 'نومبر', 'دسمبر'],
'weekdays' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
'weekdays_short' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
'weekdays_min' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ص', 'ش'],
]);
src/Carbon/Lang/pap.php 0000644 00000002471 14753612052 0010722 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return [
'formats' => [
'LT' => 'HH.mm',
'LTS' => 'HH.mm:ss',
'L' => 'DD-MM-YY',
'LL' => 'MMMM [di] DD, YYYY',
'LLL' => 'DD MMM HH.mm',
'LLLL' => 'MMMM DD, YYYY HH.mm',
],
'months' => ['yanüari', 'febrüari', 'mart', 'aprel', 'mei', 'yüni', 'yüli', 'ougùstùs', 'sèptèmber', 'oktober', 'novèmber', 'desèmber'],
'months_short' => ['yan', 'feb', 'mar', 'apr', 'mei', 'yün', 'yül', 'oug', 'sèp', 'okt', 'nov', 'des'],
'weekdays' => ['djadomingo', 'djaluna', 'djamars', 'djawebs', 'djarason', 'djabierne', 'djasabra'],
'weekdays_short' => ['do', 'lu', 'ma', 'we', 'ra', 'bi', 'sa'],
'weekdays_min' => ['do', 'lu', 'ma', 'we', 'ra', 'bi', 'sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count aña',
'month' => ':count luna',
'week' => ':count siman',
'day' => ':count dia',
'hour' => ':count ora',
'minute' => ':count minüt',
'second' => ':count sekònde',
'list' => [', ', ' i '],
];
src/Carbon/Lang/pap_AW.php 0000644 00000000553 14753612052 0011310 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - information from native speaker Pablo Saratxaga pablo@mandrakesoft.com
*/
return require __DIR__.'/pap.php';
src/Carbon/Lang/pap_CW.php 0000644 00000000553 14753612052 0011312 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - information from native speaker Pablo Saratxaga pablo@mandrakesoft.com
*/
return require __DIR__.'/pap.php';
src/Carbon/Lang/pl.php 0000644 00000010037 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Wacław Jacek
* - François B
* - Tim Fish
* - Serhan Apaydın
* - Massimiliano Caniparoli
* - JD Isaacks
* - Jakub Szwacz
* - Jan
* - Paul
* - damlys
* - Marek (marast78)
* - Peter (UnrulyNatives)
* - Qrzysio
* - Jan (aso824)
* - diverpl
*/
use Carbon\CarbonInterface;
return [
'year' => ':count rok|:count lata|:count lat',
'a_year' => 'rok|:count lata|:count lat',
'y' => ':count r|:count l|:count l',
'month' => ':count miesiąc|:count miesiące|:count miesięcy',
'a_month' => 'miesiąc|:count miesiące|:count miesięcy',
'm' => ':count mies.',
'week' => ':count tydzień|:count tygodnie|:count tygodni',
'a_week' => 'tydzień|:count tygodnie|:count tygodni',
'w' => ':count tyg.',
'day' => ':count dzień|:count dni|:count dni',
'a_day' => 'dzień|:count dni|:count dni',
'd' => ':count d',
'hour' => ':count godzina|:count godziny|:count godzin',
'a_hour' => 'godzina|:count godziny|:count godzin',
'h' => ':count godz.',
'minute' => ':count minuta|:count minuty|:count minut',
'a_minute' => 'minuta|:count minuty|:count minut',
'min' => ':count min',
'second' => ':count sekunda|:count sekundy|:count sekund',
'a_second' => '{1}kilka sekund|:count sekunda|:count sekundy|:count sekund',
's' => ':count sek.',
'ago' => ':time temu',
'from_now' => static function ($time) {
return 'za '.strtr($time, [
'godzina' => 'godzinę',
'minuta' => 'minutę',
'sekunda' => 'sekundę',
]);
},
'after' => ':time po',
'before' => ':time przed',
'diff_now' => 'teraz',
'diff_today' => 'Dziś',
'diff_today_regexp' => 'Dziś(?:\\s+o)?',
'diff_yesterday' => 'wczoraj',
'diff_yesterday_regexp' => 'Wczoraj(?:\\s+o)?',
'diff_tomorrow' => 'jutro',
'diff_tomorrow_regexp' => 'Jutro(?:\\s+o)?',
'diff_before_yesterday' => 'przedwczoraj',
'diff_after_tomorrow' => 'pojutrze',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Dziś o] LT',
'nextDay' => '[Jutro o] LT',
'nextWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[W niedzielę o] LT',
2 => '[We wtorek o] LT',
3 => '[W środę o] LT',
6 => '[W sobotę o] LT',
default => '[W] dddd [o] LT',
},
'lastDay' => '[Wczoraj o] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[W zeszłą niedzielę o] LT',
3 => '[W zeszłą środę o] LT',
6 => '[W zeszłą sobotę o] LT',
default => '[W zeszły] dddd [o] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['stycznia', 'lutego', 'marca', 'kwietnia', 'maja', 'czerwca', 'lipca', 'sierpnia', 'września', 'października', 'listopada', 'grudnia'],
'months_standalone' => ['styczeń', 'luty', 'marzec', 'kwiecień', 'maj', 'czerwiec', 'lipiec', 'sierpień', 'wrzesień', 'październik', 'listopad', 'grudzień'],
'months_short' => ['sty', 'lut', 'mar', 'kwi', 'maj', 'cze', 'lip', 'sie', 'wrz', 'paź', 'lis', 'gru'],
'months_regexp' => '/(DD?o?\.?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => ['niedziela', 'poniedziałek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota'],
'weekdays_short' => ['ndz', 'pon', 'wt', 'śr', 'czw', 'pt', 'sob'],
'weekdays_min' => ['Nd', 'Pn', 'Wt', 'Śr', 'Cz', 'Pt', 'So'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' i '],
'meridiem' => ['przed południem', 'po południu'],
];
src/Carbon/Lang/pl_PL.php 0000644 00000000413 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pl.php';
src/Carbon/Lang/prg.php 0000644 00000003213 14753612052 0010725 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'months' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
'months_short' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'YYYY MMMM D, dddd HH:mm',
],
'year' => ':count meta',
'y' => ':count meta',
'a_year' => ':count meta',
'month' => ':count mēniks', // less reliable
'm' => ':count mēniks', // less reliable
'a_month' => ':count mēniks', // less reliable
'week' => ':count sawaītin', // less reliable
'w' => ':count sawaītin', // less reliable
'a_week' => ':count sawaītin', // less reliable
'day' => ':count di',
'd' => ':count di',
'a_day' => ':count di',
'hour' => ':count bruktēt', // less reliable
'h' => ':count bruktēt', // less reliable
'a_hour' => ':count bruktēt', // less reliable
'minute' => ':count līkuts', // less reliable
'min' => ':count līkuts', // less reliable
'a_minute' => ':count līkuts', // less reliable
'second' => ':count kitan', // less reliable
's' => ':count kitan', // less reliable
'a_second' => ':count kitan', // less reliable
]);
src/Carbon/Lang/ps.php 0000644 00000004700 14753612052 0010561 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Muhammad Nasir Rahimi
* - Nassim Nasibullah (spinzar)
*/
return [
'year' => ':count کال|:count کاله',
'y' => ':countکال|:countکاله',
'month' => ':count مياشت|:count مياشتي',
'm' => ':countمياشت|:countمياشتي',
'week' => ':count اونۍ|:count اونۍ',
'w' => ':countاونۍ|:countاونۍ',
'day' => ':count ورځ|:count ورځي',
'd' => ':countورځ|:countورځي',
'hour' => ':count ساعت|:count ساعته',
'h' => ':countساعت|:countساعته',
'minute' => ':count دقيقه|:count دقيقې',
'min' => ':countدقيقه|:countدقيقې',
'second' => ':count ثانيه|:count ثانيې',
's' => ':countثانيه|:countثانيې',
'ago' => ':time دمخه',
'from_now' => ':time له اوس څخه',
'after' => ':time وروسته',
'before' => ':time دمخه',
'list' => ['، ', ' او '],
'meridiem' => ['غ.م.', 'غ.و.'],
'weekdays' => ['اتوار', 'ګل', 'نهه', 'شورو', 'زيارت', 'جمعه', 'خالي'],
'weekdays_short' => ['ا', 'ګ', 'ن', 'ش', 'ز', 'ج', 'خ'],
'weekdays_min' => ['ا', 'ګ', 'ن', 'ش', 'ز', 'ج', 'خ'],
'months' => ['جنوري', 'فبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سېپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'months_short' => ['جنوري', 'فبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سېپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'months_standalone' => ['جنوري', 'فېبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'months_short_standalone' => ['جنوري', 'فبروري', 'مارچ', 'اپریل', 'مۍ', 'جون', 'جولای', 'اگست', 'سپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'first_day_of_week' => 6,
'weekend' => [4, 5],
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'YYYY/M/d',
'LL' => 'YYYY MMM D',
'LLL' => 'د YYYY د MMMM D H:mm',
'LLLL' => 'dddd د YYYY د MMMM D H:mm',
],
];
src/Carbon/Lang/ps_AF.php 0000644 00000000413 14753612052 0011124 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ps.php';
src/Carbon/Lang/pt.php 0000644 00000007322 14753612052 0010565 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Cassiano Montanari
* - Matt Pope
* - François B
* - Prodis
* - JD Isaacks
* - Raphael Amorim
* - João Magalhães
* - victortobias
* - Paulo Freitas
* - Sebastian Thierer
* - Claudson Martins (claudsonm)
*/
use Carbon\CarbonInterface;
return [
'year' => ':count ano|:count anos',
'a_year' => 'um ano|:count anos',
'y' => ':counta',
'month' => ':count mês|:count meses',
'a_month' => 'um mês|:count meses',
'm' => ':countm',
'week' => ':count semana|:count semanas',
'a_week' => 'uma semana|:count semanas',
'w' => ':countsem',
'day' => ':count dia|:count dias',
'a_day' => 'um dia|:count dias',
'd' => ':countd',
'hour' => ':count hora|:count horas',
'a_hour' => 'uma hora|:count horas',
'h' => ':counth',
'minute' => ':count minuto|:count minutos',
'a_minute' => 'um minuto|:count minutos',
'min' => ':countmin',
'second' => ':count segundo|:count segundos',
'a_second' => 'alguns segundos|:count segundos',
's' => ':counts',
'millisecond' => ':count milissegundo|:count milissegundos',
'a_millisecond' => 'um milissegundo|:count milissegundos',
'ms' => ':countms',
'microsecond' => ':count microssegundo|:count microssegundos',
'a_microsecond' => 'um microssegundo|:count microssegundos',
'µs' => ':countµs',
'ago' => 'há :time',
'from_now' => 'em :time',
'after' => ':time depois',
'before' => ':time antes',
'diff_now' => 'agora',
'diff_today' => 'Hoje',
'diff_today_regexp' => 'Hoje(?:\\s+às)?',
'diff_yesterday' => 'ontem',
'diff_yesterday_regexp' => 'Ontem(?:\\s+às)?',
'diff_tomorrow' => 'amanhã',
'diff_tomorrow_regexp' => 'Amanhã(?:\\s+às)?',
'diff_before_yesterday' => 'anteontem',
'diff_after_tomorrow' => 'depois de amanhã',
'period_recurrences' => 'uma vez|:count vezes',
'period_interval' => 'cada :interval',
'period_start_date' => 'de :date',
'period_end_date' => 'até :date',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D [de] MMMM [de] YYYY',
'LLL' => 'D [de] MMMM [de] YYYY HH:mm',
'LLLL' => 'dddd, D [de] MMMM [de] YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Hoje às] LT',
'nextDay' => '[Amanhã às] LT',
'nextWeek' => 'dddd [às] LT',
'lastDay' => '[Ontem às] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0, 6 => '[Último] dddd [às] LT',
default => '[Última] dddd [às] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':numberº',
'months' => ['janeiro', 'fevereiro', 'março', 'abril', 'maio', 'junho', 'julho', 'agosto', 'setembro', 'outubro', 'novembro', 'dezembro'],
'months_short' => ['jan', 'fev', 'mar', 'abr', 'mai', 'jun', 'jul', 'ago', 'set', 'out', 'nov', 'dez'],
'weekdays' => ['domingo', 'segunda-feira', 'terça-feira', 'quarta-feira', 'quinta-feira', 'sexta-feira', 'sábado'],
'weekdays_short' => ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sáb'],
'weekdays_min' => ['Do', '2ª', '3ª', '4ª', '5ª', '6ª', 'Sá'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' e '],
'ordinal_words' => [
'of' => 'de',
'first' => 'primeira',
'second' => 'segunda',
'third' => 'terceira',
'fourth' => 'quarta',
'fifth' => 'quinta',
'last' => 'última',
],
];
src/Carbon/Lang/pt_AO.php 0000644 00000000413 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/pt_BR.php 0000644 00000001576 14753612052 0011155 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Cassiano Montanari
* - Eduardo Dalla Vecchia
* - David Rodrigues
* - Matt Pope
* - François B
* - Prodis
* - Marlon Maxwel
* - JD Isaacks
* - Raphael Amorim
* - Rafael Raupp
* - felipeleite1
* - swalker
* - Lucas Macedo
* - Paulo Freitas
* - Sebastian Thierer
*/
return array_replace_recursive(require __DIR__.'/pt.php', [
'period_recurrences' => 'uma|:count vez',
'period_interval' => 'toda :interval',
'formats' => [
'LLL' => 'D [de] MMMM [de] YYYY [às] HH:mm',
'LLLL' => 'dddd, D [de] MMMM [de] YYYY [às] HH:mm',
],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/pt_CH.php 0000644 00000000413 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/pt_CV.php 0000644 00000000413 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/pt_GQ.php 0000644 00000000413 14753612052 0011146 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/pt_GW.php 0000644 00000000413 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/pt_LU.php 0000644 00000000413 14753612052 0011157 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/pt_MO.php 0000644 00000001004 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/pt.php', [
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'LLL' => 'D [de] MMMM [de] YYYY, h:mm a',
'LLLL' => 'dddd, D [de] MMMM [de] YYYY, h:mm a',
],
'first_day_of_week' => 0,
]);
src/Carbon/Lang/pt_MZ.php 0000644 00000000507 14753612052 0011171 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/pt.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/pt_PT.php 0000644 00000001713 14753612052 0011166 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RAP bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/pt.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['janeiro', 'fevereiro', 'março', 'abril', 'maio', 'junho', 'julho', 'agosto', 'setembro', 'outubro', 'novembro', 'dezembro'],
'months_short' => ['jan', 'fev', 'mar', 'abr', 'mai', 'jun', 'jul', 'ago', 'set', 'out', 'nov', 'dez'],
'weekdays' => ['domingo', 'segunda', 'terça', 'quarta', 'quinta', 'sexta', 'sábado'],
'weekdays_short' => ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sáb'],
'weekdays_min' => ['dom', 'seg', 'ter', 'qua', 'qui', 'sex', 'sáb'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
]);
src/Carbon/Lang/pt_ST.php 0000644 00000000413 14753612052 0011165 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/pt_TL.php 0000644 00000000413 14753612052 0011156 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/pt.php';
src/Carbon/Lang/qu.php 0000644 00000001051 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/es_UY.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM, YYYY HH:mm',
],
'first_day_of_week' => 0,
]);
src/Carbon/Lang/qu_BO.php 0000644 00000000507 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/qu.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/qu_EC.php 0000644 00000000507 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/qu.php', [
'first_day_of_week' => 1,
]);
src/Carbon/Lang/quz.php 0000644 00000000517 14753612052 0010760 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/quz_PE.php';
src/Carbon/Lang/quz_PE.php 0000644 00000003265 14753612052 0011347 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Sugar Labs // OLPC sugarlabs.org libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['iniru', 'phiwriru', 'marsu', 'awril', 'mayu', 'huniyu', 'huliyu', 'agustu', 'siptiyimri', 'uktuwri', 'nuwiyimri', 'tisiyimri'],
'months_short' => ['ini', 'phi', 'mar', 'awr', 'may', 'hun', 'hul', 'agu', 'sip', 'ukt', 'nuw', 'tis'],
'weekdays' => ['tuminku', 'lunis', 'martis', 'miyirkulis', 'juywis', 'wiyirnis', 'sawatu'],
'weekdays_short' => ['tum', 'lun', 'mar', 'miy', 'juy', 'wiy', 'saw'],
'weekdays_min' => ['tum', 'lun', 'mar', 'miy', 'juy', 'wiy', 'saw'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'minute' => ':count uchuy', // less reliable
'min' => ':count uchuy', // less reliable
'a_minute' => ':count uchuy', // less reliable
'year' => ':count wata',
'y' => ':count wata',
'a_year' => ':count wata',
'month' => ':count killa',
'm' => ':count killa',
'a_month' => ':count killa',
'week' => ':count simana',
'w' => ':count simana',
'a_week' => ':count simana',
'day' => ':count pʼunchaw',
'd' => ':count pʼunchaw',
'a_day' => ':count pʼunchaw',
'hour' => ':count ura',
'h' => ':count ura',
'a_hour' => ':count ura',
'second' => ':count iskay ñiqin',
's' => ':count iskay ñiqin',
'a_second' => ':count iskay ñiqin',
]);
src/Carbon/Lang/raj.php 0000644 00000000517 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/raj_IN.php';
src/Carbon/Lang/raj_IN.php 0000644 00000004375 14753612052 0011311 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - meghrajsuthar03@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रैल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितंबर', 'अक्टूबर', 'नवंबर', 'दिसंबर'],
'months_short' => ['जन', 'फर', 'मार्च', 'अप्रै', 'मई', 'जून', 'जुल', 'अग', 'सित', 'अक्टू', 'नव', 'दिस'],
'weekdays' => ['रविवार', 'सोमवार', 'मंगल्लवार', 'बुधवार', 'बृहस्पतिवार', 'शुक्रवार', 'शनिवार'],
'weekdays_short' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
'weekdays_min' => ['रवि', 'सोम', 'मंगल', 'बुध', 'बृहस्पति', 'शुक्र', 'शनि'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
'year' => ':count आंहू', // less reliable
'y' => ':count आंहू', // less reliable
'a_year' => ':count आंहू', // less reliable
'month' => ':count सूरज', // less reliable
'm' => ':count सूरज', // less reliable
'a_month' => ':count सूरज', // less reliable
'week' => ':count निवाज', // less reliable
'w' => ':count निवाज', // less reliable
'a_week' => ':count निवाज', // less reliable
'day' => ':count अेक', // less reliable
'd' => ':count अेक', // less reliable
'a_day' => ':count अेक', // less reliable
'hour' => ':count दुनियांण', // less reliable
'h' => ':count दुनियांण', // less reliable
'a_hour' => ':count दुनियांण', // less reliable
]);
src/Carbon/Lang/rm.php 0000644 00000003236 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - tjku
* - Max Melentiev
* - Juanito Fatas
* - Tsutomu Kuroda
* - Akira Matsuda
* - Christopher Dell
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Nicolás Hock Isaza
* - sebastian de castelberg
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'Do MMMM YYYY',
'LLL' => 'Do MMMM, HH:mm [Uhr]',
'LLLL' => 'dddd, Do MMMM YYYY, HH:mm [Uhr]',
],
'year' => ':count onn|:count onns',
'month' => ':count mais',
'week' => ':count emna|:count emnas',
'day' => ':count di|:count dis',
'hour' => ':count oura|:count ouras',
'minute' => ':count minuta|:count minutas',
'second' => ':count secunda|:count secundas',
'weekdays' => ['dumengia', 'glindesdi', 'mardi', 'mesemna', 'gievgia', 'venderdi', 'sonda'],
'weekdays_short' => ['du', 'gli', 'ma', 'me', 'gie', 've', 'so'],
'weekdays_min' => ['du', 'gli', 'ma', 'me', 'gie', 've', 'so'],
'months' => ['schaner', 'favrer', 'mars', 'avrigl', 'matg', 'zercladur', 'fanadur', 'avust', 'settember', 'october', 'november', 'december'],
'months_short' => ['schan', 'favr', 'mars', 'avr', 'matg', 'zercl', 'fan', 'avust', 'sett', 'oct', 'nov', 'dec'],
'meridiem' => ['avantmezdi', 'suentermezdi'],
'list' => [', ', ' e '],
'first_day_of_week' => 1,
]);
src/Carbon/Lang/rn.php 0000644 00000003511 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Z.MU.', 'Z.MW.'],
'weekdays' => ['Ku w’indwi', 'Ku wa mbere', 'Ku wa kabiri', 'Ku wa gatatu', 'Ku wa kane', 'Ku wa gatanu', 'Ku wa gatandatu'],
'weekdays_short' => ['cu.', 'mbe.', 'kab.', 'gtu.', 'kan.', 'gnu.', 'gnd.'],
'weekdays_min' => ['cu.', 'mbe.', 'kab.', 'gtu.', 'kan.', 'gnu.', 'gnd.'],
'months' => ['Nzero', 'Ruhuhuma', 'Ntwarante', 'Ndamukiza', 'Rusama', 'Ruheshi', 'Mukakaro', 'Nyandagaro', 'Nyakanga', 'Gitugutu', 'Munyonyo', 'Kigarama'],
'months_short' => ['Mut.', 'Gas.', 'Wer.', 'Mat.', 'Gic.', 'Kam.', 'Nya.', 'Kan.', 'Nze.', 'Ukw.', 'Ugu.', 'Uku.'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'year' => 'imyaka :count',
'y' => 'imyaka :count',
'a_year' => 'imyaka :count',
'month' => 'amezi :count',
'm' => 'amezi :count',
'a_month' => 'amezi :count',
'week' => 'indwi :count',
'w' => 'indwi :count',
'a_week' => 'indwi :count',
'day' => 'imisi :count',
'd' => 'imisi :count',
'a_day' => 'imisi :count',
'hour' => 'amasaha :count',
'h' => 'amasaha :count',
'a_hour' => 'amasaha :count',
'minute' => 'iminuta :count',
'min' => 'iminuta :count',
'a_minute' => 'iminuta :count',
'second' => 'inguvu :count', // less reliable
's' => 'inguvu :count', // less reliable
'a_second' => 'inguvu :count', // less reliable
]);
src/Carbon/Lang/ro.php 0000644 00000005420 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - JD Isaacks
* - Cătălin Georgescu
* - Valentin Ivaşcu (oriceon)
*/
return [
'year' => ':count an|:count ani|:count ani',
'a_year' => 'un an|:count ani|:count ani',
'y' => ':count a.',
'month' => ':count lună|:count luni|:count luni',
'a_month' => 'o lună|:count luni|:count luni',
'm' => ':count l.',
'week' => ':count săptămână|:count săptămâni|:count săptămâni',
'a_week' => 'o săptămână|:count săptămâni|:count săptămâni',
'w' => ':count săp.',
'day' => ':count zi|:count zile|:count zile',
'a_day' => 'o zi|:count zile|:count zile',
'd' => ':count z.',
'hour' => ':count oră|:count ore|:count ore',
'a_hour' => 'o oră|:count ore|:count ore',
'h' => ':count o.',
'minute' => ':count minut|:count minute|:count minute',
'a_minute' => 'un minut|:count minute|:count minute',
'min' => ':count m.',
'second' => ':count secundă|:count secunde|:count secunde',
'a_second' => 'câteva secunde|:count secunde|:count secunde',
's' => ':count sec.',
'ago' => ':time în urmă',
'from_now' => 'peste :time',
'after' => 'peste :time',
'before' => 'acum :time',
'diff_now' => 'acum',
'diff_today' => 'azi',
'diff_today_regexp' => 'azi(?:\\s+la)?',
'diff_yesterday' => 'ieri',
'diff_yesterday_regexp' => 'ieri(?:\\s+la)?',
'diff_tomorrow' => 'mâine',
'diff_tomorrow_regexp' => 'mâine(?:\\s+la)?',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY H:mm',
'LLLL' => 'dddd, D MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[azi la] LT',
'nextDay' => '[mâine la] LT',
'nextWeek' => 'dddd [la] LT',
'lastDay' => '[ieri la] LT',
'lastWeek' => '[fosta] dddd [la] LT',
'sameElse' => 'L',
],
'months' => ['ianuarie', 'februarie', 'martie', 'aprilie', 'mai', 'iunie', 'iulie', 'august', 'septembrie', 'octombrie', 'noiembrie', 'decembrie'],
'months_short' => ['ian.', 'feb.', 'mar.', 'apr.', 'mai', 'iun.', 'iul.', 'aug.', 'sept.', 'oct.', 'nov.', 'dec.'],
'weekdays' => ['duminică', 'luni', 'marți', 'miercuri', 'joi', 'vineri', 'sâmbătă'],
'weekdays_short' => ['dum', 'lun', 'mar', 'mie', 'joi', 'vin', 'sâm'],
'weekdays_min' => ['du', 'lu', 'ma', 'mi', 'jo', 'vi', 'sâ'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' și '],
'meridiem' => ['a.m.', 'p.m.'],
];
src/Carbon/Lang/ro_MD.php 0000644 00000001011 14753612052 0011127 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ro.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY, HH:mm',
'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
],
]);
src/Carbon/Lang/ro_RO.php 0000644 00000000413 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ro.php';
src/Carbon/Lang/rof.php 0000644 00000002255 14753612052 0010730 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['kang’ama', 'kingoto'],
'weekdays' => ['Ijumapili', 'Ijumatatu', 'Ijumanne', 'Ijumatano', 'Alhamisi', 'Ijumaa', 'Ijumamosi'],
'weekdays_short' => ['Ijp', 'Ijt', 'Ijn', 'Ijtn', 'Alh', 'Iju', 'Ijm'],
'weekdays_min' => ['Ijp', 'Ijt', 'Ijn', 'Ijtn', 'Alh', 'Iju', 'Ijm'],
'months' => ['Mweri wa kwanza', 'Mweri wa kaili', 'Mweri wa katatu', 'Mweri wa kaana', 'Mweri wa tanu', 'Mweri wa sita', 'Mweri wa saba', 'Mweri wa nane', 'Mweri wa tisa', 'Mweri wa ikumi', 'Mweri wa ikumi na moja', 'Mweri wa ikumi na mbili'],
'months_short' => ['M1', 'M2', 'M3', 'M4', 'M5', 'M6', 'M7', 'M8', 'M9', 'M10', 'M11', 'M12'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/ru.php 0000644 00000015664 14753612052 0010600 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Bari Badamshin
* - Jørn Ølmheim
* - François B
* - Tim Fish
* - Коренберг Марк (imac)
* - Serhan Apaydın
* - RomeroMsk
* - vsn4ik
* - JD Isaacks
* - Bari Badamshin
* - Jørn Ølmheim
* - François B
* - Коренберг Марк (imac)
* - Serhan Apaydın
* - RomeroMsk
* - vsn4ik
* - JD Isaacks
* - Fellzo
* - andrey-helldar
* - Pavel Skripkin (psxx)
* - AlexWalkerson
* - Vladislav UnsealedOne
* - dima-bzz
*/
use Carbon\CarbonInterface;
$transformDiff = static fn (string $input) => strtr($input, [
'неделя' => 'неделю',
'секунда' => 'секунду',
'минута' => 'минуту',
]);
return [
'year' => ':count год|:count года|:count лет',
'y' => ':count г.|:count г.|:count л.',
'a_year' => '{1}год|:count год|:count года|:count лет',
'month' => ':count месяц|:count месяца|:count месяцев',
'm' => ':count мес.',
'a_month' => '{1}месяц|:count месяц|:count месяца|:count месяцев',
'week' => ':count неделя|:count недели|:count недель',
'w' => ':count нед.',
'a_week' => '{1}неделя|:count неделю|:count недели|:count недель',
'day' => ':count день|:count дня|:count дней',
'd' => ':count д.',
'a_day' => '{1}день|:count день|:count дня|:count дней',
'hour' => ':count час|:count часа|:count часов',
'h' => ':count ч.',
'a_hour' => '{1}час|:count час|:count часа|:count часов',
'minute' => ':count минута|:count минуты|:count минут',
'min' => ':count мин.',
'a_minute' => '{1}минута|:count минута|:count минуты|:count минут',
'second' => ':count секунда|:count секунды|:count секунд',
's' => ':count сек.',
'a_second' => '{1}несколько секунд|:count секунду|:count секунды|:count секунд',
'ago' => static fn (string $time) => $transformDiff($time).' назад',
'from_now' => static fn (string $time) => 'через '.$transformDiff($time),
'after' => static fn (string $time) => $transformDiff($time).' после',
'before' => static fn (string $time) => $transformDiff($time).' до',
'diff_now' => 'только что',
'diff_today' => 'Сегодня,',
'diff_today_regexp' => 'Сегодня,?(?:\\s+в)?',
'diff_yesterday' => 'вчера',
'diff_yesterday_regexp' => 'Вчера,?(?:\\s+в)?',
'diff_tomorrow' => 'завтра',
'diff_tomorrow_regexp' => 'Завтра,?(?:\\s+в)?',
'diff_before_yesterday' => 'позавчера',
'diff_after_tomorrow' => 'послезавтра',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY г.',
'LLL' => 'D MMMM YYYY г., H:mm',
'LLLL' => 'dddd, D MMMM YYYY г., H:mm',
],
'calendar' => [
'sameDay' => '[Сегодня, в] LT',
'nextDay' => '[Завтра, в] LT',
'nextWeek' => static function (CarbonInterface $current, \Carbon\CarbonInterface $other) {
if ($current->week !== $other->week) {
switch ($current->dayOfWeek) {
case 0:
return '[В следующее] dddd, [в] LT';
case 1:
case 2:
case 4:
return '[В следующий] dddd, [в] LT';
case 3:
case 5:
case 6:
return '[В следующую] dddd, [в] LT';
}
}
if ($current->dayOfWeek === 2) {
return '[Во] dddd, [в] LT';
}
return '[В] dddd, [в] LT';
},
'lastDay' => '[Вчера, в] LT',
'lastWeek' => static function (CarbonInterface $current, \Carbon\CarbonInterface $other) {
if ($current->week !== $other->week) {
switch ($current->dayOfWeek) {
case 0:
return '[В прошлое] dddd, [в] LT';
case 1:
case 2:
case 4:
return '[В прошлый] dddd, [в] LT';
case 3:
case 5:
case 6:
return '[В прошлую] dddd, [в] LT';
}
}
if ($current->dayOfWeek === 2) {
return '[Во] dddd, [в] LT';
}
return '[В] dddd, [в] LT';
},
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return match ($period) {
'M', 'd', 'DDD' => $number.'-й',
'D' => $number.'-го',
'w', 'W' => $number.'-я',
default => $number,
};
},
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'ночи';
}
if ($hour < 12) {
return 'утра';
}
if ($hour < 17) {
return 'дня';
}
return 'вечера';
},
'months' => ['января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'],
'months_standalone' => ['январь', 'февраль', 'март', 'апрель', 'май', 'июнь', 'июль', 'август', 'сентябрь', 'октябрь', 'ноябрь', 'декабрь'],
'months_short' => ['янв', 'фев', 'мар', 'апр', 'мая', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
'months_short_standalone' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
'months_regexp' => '/(DD?o?\.?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => ['воскресенье', 'понедельник', 'вторник', 'среду', 'четверг', 'пятницу', 'субботу'],
'weekdays_standalone' => ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'],
'weekdays_short' => ['вск', 'пнд', 'втр', 'срд', 'чтв', 'птн', 'сбт'],
'weekdays_min' => ['вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
'weekdays_regexp' => '/\[\s*(В|в)\s*((?:прошлую|следующую|эту)\s*)?\]\s*dddd/',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' и '],
];
src/Carbon/Lang/ru_BY.php 0000644 00000000413 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ru.php';
src/Carbon/Lang/ru_KG.php 0000644 00000000413 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ru.php';
src/Carbon/Lang/ru_KZ.php 0000644 00000000413 14753612052 0011166 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ru.php';
src/Carbon/Lang/ru_MD.php 0000644 00000000413 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ru.php';
src/Carbon/Lang/ru_RU.php 0000644 00000000413 14753612052 0011170 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ru.php';
src/Carbon/Lang/ru_UA.php 0000644 00000001265 14753612052 0011155 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - RFC 2319 bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/ru.php', [
'weekdays' => ['воскресенье', 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота'],
'weekdays_short' => ['вск', 'пнд', 'вто', 'срд', 'чтв', 'птн', 'суб'],
'weekdays_min' => ['вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'су'],
]);
src/Carbon/Lang/rw.php 0000644 00000000516 14753612052 0010570 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/rw_RW.php';
src/Carbon/Lang/rw_RW.php 0000644 00000003246 14753612052 0011203 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Rwanda Steve Murphy murf@e-tools.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Mutarama', 'Gashyantare', 'Werurwe', 'Mata', 'Gicuransi', 'Kamena', 'Nyakanga', 'Kanama', 'Nzeli', 'Ukwakira', 'Ugushyingo', 'Ukuboza'],
'months_short' => ['Mut', 'Gas', 'Wer', 'Mat', 'Gic', 'Kam', 'Nya', 'Kan', 'Nze', 'Ukw', 'Ugu', 'Uku'],
'weekdays' => ['Ku cyumweru', 'Kuwa mbere', 'Kuwa kabiri', 'Kuwa gatatu', 'Kuwa kane', 'Kuwa gatanu', 'Kuwa gatandatu'],
'weekdays_short' => ['Mwe', 'Mbe', 'Kab', 'Gtu', 'Kan', 'Gnu', 'Gnd'],
'weekdays_min' => ['Mwe', 'Mbe', 'Kab', 'Gtu', 'Kan', 'Gnu', 'Gnd'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'second' => ':count vuna', // less reliable
's' => ':count vuna', // less reliable
'a_second' => ':count vuna', // less reliable
'year' => 'aka :count',
'y' => 'aka :count',
'a_year' => 'aka :count',
'month' => 'ezi :count',
'm' => 'ezi :count',
'a_month' => 'ezi :count',
'week' => ':count icyumweru',
'w' => ':count icyumweru',
'a_week' => ':count icyumweru',
'day' => ':count nsi',
'd' => ':count nsi',
'a_day' => ':count nsi',
'hour' => 'saha :count',
'h' => 'saha :count',
'a_hour' => 'saha :count',
'minute' => ':count -nzinya',
'min' => ':count -nzinya',
'a_minute' => ':count -nzinya',
]);
src/Carbon/Lang/rwk.php 0000644 00000002103 14753612052 0010735 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['utuko', 'kyiukonyi'],
'weekdays' => ['Jumapilyi', 'Jumatatuu', 'Jumanne', 'Jumatanu', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'months' => ['Januari', 'Februari', 'Machi', 'Aprilyi', 'Mei', 'Junyi', 'Julyai', 'Agusti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/sa.php 0000644 00000000516 14753612052 0010543 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/sa_IN.php';
src/Carbon/Lang/sa_IN.php 0000644 00000004760 14753612052 0011136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - The Debian project Christian Perrier bubulle@debian.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D-MM-YY',
],
'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'weekdays' => ['रविवासर:', 'सोमवासर:', 'मंगलवासर:', 'बुधवासर:', 'बृहस्पतिवासरः', 'शुक्रवासर', 'शनिवासर:'],
'weekdays_short' => ['रविः', 'सोम:', 'मंगल:', 'बुध:', 'बृहस्पतिः', 'शुक्र', 'शनि:'],
'weekdays_min' => ['रविः', 'सोम:', 'मंगल:', 'बुध:', 'बृहस्पतिः', 'शुक्र', 'शनि:'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
'minute' => ':count होरा', // less reliable
'min' => ':count होरा', // less reliable
'a_minute' => ':count होरा', // less reliable
'year' => ':count वर्ष',
'y' => ':count वर्ष',
'a_year' => ':count वर्ष',
'month' => ':count मास',
'm' => ':count मास',
'a_month' => ':count मास',
'week' => ':count सप्ताहः saptahaĥ',
'w' => ':count सप्ताहः saptahaĥ',
'a_week' => ':count सप्ताहः saptahaĥ',
'day' => ':count दिन',
'd' => ':count दिन',
'a_day' => ':count दिन',
'hour' => ':count घण्टा',
'h' => ':count घण्टा',
'a_hour' => ':count घण्टा',
'second' => ':count द्वितीयः',
's' => ':count द्वितीयः',
'a_second' => ':count द्वितीयः',
]);
src/Carbon/Lang/sah.php 0000644 00000000517 14753612052 0010714 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/sah_RU.php';
src/Carbon/Lang/sah_RU.php 0000644 00000002365 14753612052 0011325 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Valery Timiriliyev Valery Timiriliyev timiriliyev@gmail.com
*/
return array_replace_recursive(require __DIR__.'/ru.php', [
'formats' => [
'L' => 'YYYY.MM.DD',
],
'months' => ['тохсунньу', 'олунньу', 'кулун тутар', 'муус устар', 'ыам ыйын', 'бэс ыйын', 'от ыйын', 'атырдьах ыйын', 'балаҕан ыйын', 'алтынньы', 'сэтинньи', 'ахсынньы'],
'months_short' => ['тохс', 'олун', 'кул', 'муус', 'ыам', 'бэс', 'от', 'атыр', 'бал', 'алт', 'сэт', 'ахс'],
'weekdays' => ['баскыһыанньа', 'бэнидиэнньик', 'оптуорунньук', 'сэрэдэ', 'чэппиэр', 'бээтинсэ', 'субуота'],
'weekdays_short' => ['бс', 'бн', 'оп', 'ср', 'чп', 'бт', 'сб'],
'weekdays_min' => ['бс', 'бн', 'оп', 'ср', 'чп', 'бт', 'сб'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/saq.php 0000644 00000002306 14753612052 0010723 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['Tesiran', 'Teipa'],
'weekdays' => ['Mderot ee are', 'Mderot ee kuni', 'Mderot ee ong’wan', 'Mderot ee inet', 'Mderot ee ile', 'Mderot ee sapa', 'Mderot ee kwe'],
'weekdays_short' => ['Are', 'Kun', 'Ong', 'Ine', 'Ile', 'Sap', 'Kwe'],
'weekdays_min' => ['Are', 'Kun', 'Ong', 'Ine', 'Ile', 'Sap', 'Kwe'],
'months' => ['Lapa le obo', 'Lapa le waare', 'Lapa le okuni', 'Lapa le ong’wan', 'Lapa le imet', 'Lapa le ile', 'Lapa le sapa', 'Lapa le isiet', 'Lapa le saal', 'Lapa le tomon', 'Lapa le tomon obo', 'Lapa le tomon waare'],
'months_short' => ['Obo', 'Waa', 'Oku', 'Ong', 'Ime', 'Ile', 'Sap', 'Isi', 'Saa', 'Tom', 'Tob', 'Tow'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/sat.php 0000644 00000000517 14753612052 0010730 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/sat_IN.php';
src/Carbon/Lang/sat_IN.php 0000644 00000004745 14753612052 0011325 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat Pune libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रेल', 'मई', 'जुन', 'जुलाई', 'अगस्त', 'सितम्बर', 'अखथबर', 'नवम्बर', 'दिसम्बर'],
'months_short' => ['जनवरी', 'फरवरी', 'मार्च', 'अप्रेल', 'मई', 'जुन', 'जुलाई', 'अगस्त', 'सितम्बर', 'अखथबर', 'नवम्बर', 'दिसम्बर'],
'weekdays' => ['सिंगेमाँहाँ', 'ओतेमाँहाँ', 'बालेमाँहाँ', 'सागुनमाँहाँ', 'सारदीमाँहाँ', 'जारुममाँहाँ', 'ञुहुममाँहाँ'],
'weekdays_short' => ['सिंगे', 'ओते', 'बाले', 'सागुन', 'सारदी', 'जारुम', 'ञुहुम'],
'weekdays_min' => ['सिंगे', 'ओते', 'बाले', 'सागुन', 'सारदी', 'जारुम', 'ञुहुम'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'month' => ':count ńindạ cando', // less reliable
'm' => ':count ńindạ cando', // less reliable
'a_month' => ':count ńindạ cando', // less reliable
'week' => ':count mãhã', // less reliable
'w' => ':count mãhã', // less reliable
'a_week' => ':count mãhã', // less reliable
'hour' => ':count ᱥᱳᱱᱚ', // less reliable
'h' => ':count ᱥᱳᱱᱚ', // less reliable
'a_hour' => ':count ᱥᱳᱱᱚ', // less reliable
'minute' => ':count ᱯᱤᱞᱪᱩ', // less reliable
'min' => ':count ᱯᱤᱞᱪᱩ', // less reliable
'a_minute' => ':count ᱯᱤᱞᱪᱩ', // less reliable
'second' => ':count ar', // less reliable
's' => ':count ar', // less reliable
'a_second' => ':count ar', // less reliable
'year' => ':count ne̲s',
'y' => ':count ne̲s',
'a_year' => ':count ne̲s',
'day' => ':count ᱫᱤᱱ',
'd' => ':count ᱫᱤᱱ',
'a_day' => ':count ᱫᱤᱱ',
]);
src/Carbon/Lang/sbp.php 0000644 00000002143 14753612052 0010722 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Lwamilawu', 'Pashamihe'],
'weekdays' => ['Mulungu', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alahamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['Mul', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'weekdays_min' => ['Mul', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'months' => ['Mupalangulwa', 'Mwitope', 'Mushende', 'Munyi', 'Mushende Magali', 'Mujimbi', 'Mushipepo', 'Mupuguto', 'Munyense', 'Mokhu', 'Musongandembwe', 'Muhaano'],
'months_short' => ['Mup', 'Mwi', 'Msh', 'Mun', 'Mag', 'Muj', 'Msp', 'Mpg', 'Mye', 'Mok', 'Mus', 'Muh'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/sc.php 0000644 00000000516 14753612052 0010545 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/sc_IT.php';
src/Carbon/Lang/sc_IT.php 0000644 00000003336 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Sardinian Translators Team Massimeddu Cireddu massimeddu@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD. MM. YY',
],
'months' => ['Ghennàrgiu', 'Freàrgiu', 'Martzu', 'Abrile', 'Maju', 'Làmpadas', 'Argiolas//Trìulas', 'Austu', 'Cabudanni', 'Santugaine//Ladàmine', 'Onniasantu//Santandria', 'Nadale//Idas'],
'months_short' => ['Ghe', 'Fre', 'Mar', 'Abr', 'Maj', 'Làm', 'Arg', 'Aus', 'Cab', 'Lad', 'Onn', 'Nad'],
'weekdays' => ['Domìnigu', 'Lunis', 'Martis', 'Mèrcuris', 'Giòbia', 'Chenàbura', 'Sàbadu'],
'weekdays_short' => ['Dom', 'Lun', 'Mar', 'Mèr', 'Giò', 'Che', 'Sàb'],
'weekdays_min' => ['Dom', 'Lun', 'Mar', 'Mèr', 'Giò', 'Che', 'Sàb'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'minute' => ':count mementu', // less reliable
'min' => ':count mementu', // less reliable
'a_minute' => ':count mementu', // less reliable
'year' => ':count annu',
'y' => ':count annu',
'a_year' => ':count annu',
'month' => ':count mese',
'm' => ':count mese',
'a_month' => ':count mese',
'week' => ':count chida',
'w' => ':count chida',
'a_week' => ':count chida',
'day' => ':count dí',
'd' => ':count dí',
'a_day' => ':count dí',
'hour' => ':count ora',
'h' => ':count ora',
'a_hour' => ':count ora',
'second' => ':count secundu',
's' => ':count secundu',
'a_second' => ':count secundu',
]);
src/Carbon/Lang/sd.php 0000644 00000004024 14753612052 0010544 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
$months = [
'جنوري',
'فيبروري',
'مارچ',
'اپريل',
'مئي',
'جون',
'جولاءِ',
'آگسٽ',
'سيپٽمبر',
'آڪٽوبر',
'نومبر',
'ڊسمبر',
];
$weekdays = [
'آچر',
'سومر',
'اڱارو',
'اربع',
'خميس',
'جمع',
'ڇنڇر',
];
/*
* Authors:
* - Narain Sagar
* - Sawood Alam
* - Narain Sagar
*/
return [
'year' => '{1}'.'هڪ سال'.'|:count '.'سال',
'month' => '{1}'.'هڪ مهينو'.'|:count '.'مهينا',
'week' => '{1}'.'ھڪ ھفتو'.'|:count '.'هفتا',
'day' => '{1}'.'هڪ ڏينهن'.'|:count '.'ڏينهن',
'hour' => '{1}'.'هڪ ڪلاڪ'.'|:count '.'ڪلاڪ',
'minute' => '{1}'.'هڪ منٽ'.'|:count '.'منٽ',
'second' => '{1}'.'چند سيڪنڊ'.'|:count '.'سيڪنڊ',
'ago' => ':time اڳ',
'from_now' => ':time پوء',
'diff_yesterday' => 'ڪالهه',
'diff_today' => 'اڄ',
'diff_tomorrow' => 'سڀاڻي',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd، D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[اڄ] LT',
'nextDay' => '[سڀاڻي] LT',
'nextWeek' => 'dddd [اڳين هفتي تي] LT',
'lastDay' => '[ڪالهه] LT',
'lastWeek' => '[گزريل هفتي] dddd [تي] LT',
'sameElse' => 'L',
],
'meridiem' => ['صبح', 'شام'],
'months' => $months,
'months_short' => $months,
'weekdays' => $weekdays,
'weekdays_short' => $weekdays,
'weekdays_min' => $weekdays,
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => ['، ', ' ۽ '],
];
src/Carbon/Lang/sd_IN.php 0000644 00000002241 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat, Pune bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/sd.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['جنوري', 'فبروري', 'مارچ', 'اپريل', 'مي', 'جون', 'جولاءِ', 'آگسٽ', 'سيپٽيمبر', 'آڪٽوبر', 'نومبر', 'ڊسمبر'],
'months_short' => ['جنوري', 'فبروري', 'مارچ', 'اپريل', 'مي', 'جون', 'جولاءِ', 'آگسٽ', 'سيپٽيمبر', 'آڪٽوبر', 'نومبر', 'ڊسمبر'],
'weekdays' => ['آرتوارُ', 'سومرُ', 'منگلُ', 'ٻُڌرُ', 'وسپت', 'جُمو', 'ڇنڇر'],
'weekdays_short' => ['آرتوارُ', 'سومرُ', 'منگلُ', 'ٻُڌرُ', 'وسپت', 'جُمو', 'ڇنڇر'],
'weekdays_min' => ['آرتوارُ', 'سومرُ', 'منگلُ', 'ٻُڌرُ', 'وسپت', 'جُمو', 'ڇنڇر'],
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/sd_IN@devanagari.php 0000644 00000003033 14753612052 0013253 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat, Pune bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/sd.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['जनवरी', 'फबरवरी', 'मार्चि', 'अप्रेल', 'मे', 'जूनि', 'जूलाइ', 'आगस्टु', 'सेप्टेंबरू', 'आक्टूबरू', 'नवंबरू', 'ॾिसंबरू'],
'months_short' => ['जनवरी', 'फबरवरी', 'मार्चि', 'अप्रेल', 'मे', 'जूनि', 'जूलाइ', 'आगस्टु', 'सेप्टेंबरू', 'आक्टूबरू', 'नवंबरू', 'ॾिसंबरू'],
'weekdays' => ['आर्तवारू', 'सूमरू', 'मंगलू', 'ॿुधरू', 'विस्पति', 'जुमो', 'छंछस'],
'weekdays_short' => ['आर्तवारू', 'सूमरू', 'मंगलू', 'ॿुधरू', 'विस्पति', 'जुमो', 'छंछस'],
'weekdays_min' => ['आर्तवारू', 'सूमरू', 'मंगलू', 'ॿुधरू', 'विस्पति', 'जुमो', 'छंछस'],
'day_of_first_week_of_year' => 1,
'meridiem' => ['म.पू.', 'म.नं.'],
]);
src/Carbon/Lang/se.php 0000644 00000005274 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Karamell
*/
return [
'year' => '{1}:count jahki|:count jagit',
'a_year' => '{1}okta jahki|:count jagit',
'y' => ':count j.',
'month' => '{1}:count mánnu|:count mánut',
'a_month' => '{1}okta mánnu|:count mánut',
'm' => ':count mán.',
'week' => '{1}:count vahkku|:count vahkku',
'a_week' => '{1}okta vahkku|:count vahkku',
'w' => ':count v.',
'day' => '{1}:count beaivi|:count beaivvit',
'a_day' => '{1}okta beaivi|:count beaivvit',
'd' => ':count b.',
'hour' => '{1}:count diimmu|:count diimmut',
'a_hour' => '{1}okta diimmu|:count diimmut',
'h' => ':count d.',
'minute' => '{1}:count minuhta|:count minuhtat',
'a_minute' => '{1}okta minuhta|:count minuhtat',
'min' => ':count min.',
'second' => '{1}:count sekunddat|:count sekunddat',
'a_second' => '{1}moadde sekunddat|:count sekunddat',
's' => ':count s.',
'ago' => 'maŋit :time',
'from_now' => ':time geažes',
'diff_yesterday' => 'ikte',
'diff_yesterday_regexp' => 'ikte(?:\\s+ti)?',
'diff_today' => 'otne',
'diff_today_regexp' => 'otne(?:\\s+ti)?',
'diff_tomorrow' => 'ihttin',
'diff_tomorrow_regexp' => 'ihttin(?:\\s+ti)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'MMMM D. [b.] YYYY',
'LLL' => 'MMMM D. [b.] YYYY [ti.] HH:mm',
'LLLL' => 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm',
],
'calendar' => [
'sameDay' => '[otne ti] LT',
'nextDay' => '[ihttin ti] LT',
'nextWeek' => 'dddd [ti] LT',
'lastDay' => '[ikte ti] LT',
'lastWeek' => '[ovddit] dddd [ti] LT',
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['ođđajagemánnu', 'guovvamánnu', 'njukčamánnu', 'cuoŋománnu', 'miessemánnu', 'geassemánnu', 'suoidnemánnu', 'borgemánnu', 'čakčamánnu', 'golggotmánnu', 'skábmamánnu', 'juovlamánnu'],
'months_short' => ['ođđj', 'guov', 'njuk', 'cuo', 'mies', 'geas', 'suoi', 'borg', 'čakč', 'golg', 'skáb', 'juov'],
'weekdays' => ['sotnabeaivi', 'vuossárga', 'maŋŋebárga', 'gaskavahkku', 'duorastat', 'bearjadat', 'lávvardat'],
'weekdays_short' => ['sotn', 'vuos', 'maŋ', 'gask', 'duor', 'bear', 'láv'],
'weekdays_min' => ['s', 'v', 'm', 'g', 'd', 'b', 'L'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' ja '],
'meridiem' => ['i.b.', 'e.b.'],
];
src/Carbon/Lang/se_FI.php 0000644 00000002167 14753612052 0011131 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/se.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'months' => ['ođđajagemánnu', 'guovvamánnu', 'njukčamánnu', 'cuoŋománnu', 'miessemánnu', 'geassemánnu', 'suoidnemánnu', 'borgemánnu', 'čakčamánnu', 'golggotmánnu', 'skábmamánnu', 'juovlamánnu'],
'months_short' => ['ođđj', 'guov', 'njuk', 'cuoŋ', 'mies', 'geas', 'suoi', 'borg', 'čakč', 'golg', 'skáb', 'juov'],
'weekdays' => ['sotnabeaivi', 'mánnodat', 'disdat', 'gaskavahkku', 'duorastat', 'bearjadat', 'lávvordat'],
'weekdays_short' => ['so', 'má', 'di', 'ga', 'du', 'be', 'lá'],
'weekdays_min' => ['so', 'má', 'di', 'ga', 'du', 'be', 'lá'],
'meridiem' => ['i', 'e'],
]);
src/Carbon/Lang/se_NO.php 0000644 00000000413 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/se.php';
src/Carbon/Lang/se_SE.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/se.php';
src/Carbon/Lang/seh.php 0000644 00000002057 14753612052 0010721 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'weekdays' => ['Dimingu', 'Chiposi', 'Chipiri', 'Chitatu', 'Chinai', 'Chishanu', 'Sabudu'],
'weekdays_short' => ['Dim', 'Pos', 'Pir', 'Tat', 'Nai', 'Sha', 'Sab'],
'weekdays_min' => ['Dim', 'Pos', 'Pir', 'Tat', 'Nai', 'Sha', 'Sab'],
'months' => ['Janeiro', 'Fevreiro', 'Marco', 'Abril', 'Maio', 'Junho', 'Julho', 'Augusto', 'Setembro', 'Otubro', 'Novembro', 'Decembro'],
'months_short' => ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Aug', 'Set', 'Otu', 'Nov', 'Dec'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'd [de] MMM [de] YYYY',
'LLL' => 'd [de] MMMM [de] YYYY HH:mm',
'LLLL' => 'dddd, d [de] MMMM [de] YYYY HH:mm',
],
]);
src/Carbon/Lang/ses.php 0000644 00000003566 14753612052 0010742 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Adduha', 'Aluula'],
'weekdays' => ['Alhadi', 'Atinni', 'Atalaata', 'Alarba', 'Alhamiisa', 'Alzuma', 'Asibti'],
'weekdays_short' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
'weekdays_min' => ['Alh', 'Ati', 'Ata', 'Ala', 'Alm', 'Alz', 'Asi'],
'months' => ['Žanwiye', 'Feewiriye', 'Marsi', 'Awiril', 'Me', 'Žuweŋ', 'Žuyye', 'Ut', 'Sektanbur', 'Oktoobur', 'Noowanbur', 'Deesanbur'],
'months_short' => ['Žan', 'Fee', 'Mar', 'Awi', 'Me', 'Žuw', 'Žuy', 'Ut', 'Sek', 'Okt', 'Noo', 'Dee'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'month' => ':count alaada', // less reliable
'm' => ':count alaada', // less reliable
'a_month' => ':count alaada', // less reliable
'hour' => ':count ɲaajin', // less reliable
'h' => ':count ɲaajin', // less reliable
'a_hour' => ':count ɲaajin', // less reliable
'minute' => ':count zarbu', // less reliable
'min' => ':count zarbu', // less reliable
'a_minute' => ':count zarbu', // less reliable
'year' => ':count jiiri',
'y' => ':count jiiri',
'a_year' => ':count jiiri',
'week' => ':count jirbiiyye',
'w' => ':count jirbiiyye',
'a_week' => ':count jirbiiyye',
'day' => ':count zaari',
'd' => ':count zaari',
'a_day' => ':count zaari',
'second' => ':count ihinkante',
's' => ':count ihinkante',
'a_second' => ':count ihinkante',
]);
src/Carbon/Lang/sg.php 0000644 00000003733 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['ND', 'LK'],
'weekdays' => ['Bikua-ôko', 'Bïkua-ûse', 'Bïkua-ptâ', 'Bïkua-usïö', 'Bïkua-okü', 'Lâpôsö', 'Lâyenga'],
'weekdays_short' => ['Bk1', 'Bk2', 'Bk3', 'Bk4', 'Bk5', 'Lâp', 'Lây'],
'weekdays_min' => ['Bk1', 'Bk2', 'Bk3', 'Bk4', 'Bk5', 'Lâp', 'Lây'],
'months' => ['Nyenye', 'Fulundïgi', 'Mbängü', 'Ngubùe', 'Bêläwü', 'Föndo', 'Lengua', 'Kükürü', 'Mvuka', 'Ngberere', 'Nabändüru', 'Kakauka'],
'months_short' => ['Nye', 'Ful', 'Mbä', 'Ngu', 'Bêl', 'Fön', 'Len', 'Kük', 'Mvu', 'Ngb', 'Nab', 'Kak'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'year' => ':count dā', // less reliable
'y' => ':count dā', // less reliable
'a_year' => ':count dā', // less reliable
'week' => ':count bïkua-okü', // less reliable
'w' => ':count bïkua-okü', // less reliable
'a_week' => ':count bïkua-okü', // less reliable
'day' => ':count ziggawâ', // less reliable
'd' => ':count ziggawâ', // less reliable
'a_day' => ':count ziggawâ', // less reliable
'hour' => ':count yângâködörö', // less reliable
'h' => ':count yângâködörö', // less reliable
'a_hour' => ':count yângâködörö', // less reliable
'second' => ':count bïkua-ôko', // less reliable
's' => ':count bïkua-ôko', // less reliable
'a_second' => ':count bïkua-ôko', // less reliable
'month' => ':count Nze tî ngu',
'm' => ':count Nze tî ngu',
'a_month' => ':count Nze tî ngu',
]);
src/Carbon/Lang/sgs.php 0000644 00000000517 14753612052 0010735 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/sgs_LT.php';
src/Carbon/Lang/sgs_LT.php 0000644 00000003272 14753612052 0011335 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Arnas Udovičius bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY.MM.DD',
],
'months' => ['sausė', 'vasarė', 'kuova', 'balondė', 'gegožės', 'bėrželė', 'lëpas', 'rogpjūtė', 'siejės', 'spalė', 'lapkrėstė', 'grůdė'],
'months_short' => ['Sau', 'Vas', 'Kuo', 'Bal', 'Geg', 'Bėr', 'Lëp', 'Rgp', 'Sie', 'Spa', 'Lap', 'Grd'],
'weekdays' => ['nedielės dëna', 'panedielis', 'oterninks', 'sereda', 'četvergs', 'petnīčė', 'sobata'],
'weekdays_short' => ['Nd', 'Pn', 'Ot', 'Sr', 'Čt', 'Pt', 'Sb'],
'weekdays_min' => ['Nd', 'Pn', 'Ot', 'Sr', 'Čt', 'Pt', 'Sb'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'minute' => ':count mažos', // less reliable
'min' => ':count mažos', // less reliable
'a_minute' => ':count mažos', // less reliable
'year' => ':count metā',
'y' => ':count metā',
'a_year' => ':count metā',
'month' => ':count mienou',
'm' => ':count mienou',
'a_month' => ':count mienou',
'week' => ':count nedielė',
'w' => ':count nedielė',
'a_week' => ':count nedielė',
'day' => ':count dīna',
'd' => ':count dīna',
'a_day' => ':count dīna',
'hour' => ':count adīna',
'h' => ':count adīna',
'a_hour' => ':count adīna',
'second' => ':count Sekondė',
's' => ':count Sekondė',
'a_second' => ':count Sekondė',
]);
src/Carbon/Lang/sh.php 0000644 00000003652 14753612052 0010556 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Томица Кораћ
* - Enrique Vidal
* - Christopher Dell
* - dmilisic
* - danijel
* - Miroslav Matkovic (mikki021)
*/
return [
'diff_now' => 'sada',
'diff_yesterday' => 'juče',
'diff_tomorrow' => 'sutra',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'MMMM D, YYYY',
'LLL' => 'DD MMM HH:mm',
'LLLL' => 'MMMM DD, YYYY HH:mm',
],
'year' => ':count godina|:count godine|:count godina',
'y' => ':count g.',
'month' => ':count mesec|:count meseca|:count meseci',
'm' => ':count m.',
'week' => ':count nedelja|:count nedelje|:count nedelja',
'w' => ':count n.',
'day' => ':count dan|:count dana|:count dana',
'd' => ':count d.',
'hour' => ':count sat|:count sata|:count sati',
'h' => ':count č.',
'minute' => ':count minut|:count minuta|:count minuta',
'min' => ':count min.',
'second' => ':count sekund|:count sekunde|:count sekundi',
's' => ':count s.',
'ago' => 'pre :time',
'from_now' => 'za :time',
'after' => 'nakon :time',
'before' => ':time raniјe',
'weekdays' => ['Nedelja', 'Ponedeljak', 'Utorak', 'Sreda', 'Četvrtak', 'Petak', 'Subota'],
'weekdays_short' => ['Ned', 'Pon', 'Uto', 'Sre', 'Čet', 'Pet', 'Sub'],
'weekdays_min' => ['Ned', 'Pon', 'Uto', 'Sre', 'Čet', 'Pet', 'Sub'],
'months' => ['Januar', 'Februar', 'Mart', 'April', 'Maj', 'Jun', 'Jul', 'Avgust', 'Septembar', 'Oktobar', 'Novembar', 'Decembar'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Avg', 'Sep', 'Okt', 'Nov', 'Dec'],
'list' => [', ', ' i '],
'meridiem' => ['pre podne', 'po podne'],
];
src/Carbon/Lang/shi.php 0000644 00000004421 14753612052 0010722 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['ⵜⵉⴼⴰⵡⵜ', 'ⵜⴰⴷⴳⴳⵯⴰⵜ'],
'weekdays' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵕⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
'weekdays_short' => ['ⴰⵙⴰ', 'ⴰⵢⵏ', 'ⴰⵙⵉ', 'ⴰⴽⵕ', 'ⴰⴽⵡ', 'ⴰⵙⵉⵎ', 'ⴰⵙⵉⴹ'],
'weekdays_min' => ['ⴰⵙⴰ', 'ⴰⵢⵏ', 'ⴰⵙⵉ', 'ⴰⴽⵕ', 'ⴰⴽⵡ', 'ⴰⵙⵉⵎ', 'ⴰⵙⵉⴹ'],
'months' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵜⵓⴱⵔ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⴰⵏⴱⵉⵔ'],
'months_short' => ['ⵉⵏⵏ', 'ⴱⵕⴰ', 'ⵎⴰⵕ', 'ⵉⴱⵔ', 'ⵎⴰⵢ', 'ⵢⵓⵏ', 'ⵢⵓⵍ', 'ⵖⵓⵛ', 'ⵛⵓⵜ', 'ⴽⵜⵓ', 'ⵏⵓⵡ', 'ⴷⵓⵊ'],
'first_day_of_week' => 6,
'weekend' => [5, 6],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'year' => ':count aseggwas',
'y' => ':count aseggwas',
'a_year' => ':count aseggwas',
'month' => ':count ayyur',
'm' => ':count ayyur',
'a_month' => ':count ayyur',
'week' => ':count imalass',
'w' => ':count imalass',
'a_week' => ':count imalass',
'day' => ':count ass',
'd' => ':count ass',
'a_day' => ':count ass',
'hour' => ':count urɣ', // less reliable
'h' => ':count urɣ', // less reliable
'a_hour' => ':count urɣ', // less reliable
'minute' => ':count ⴰⵎⵥⵉ', // less reliable
'min' => ':count ⴰⵎⵥⵉ', // less reliable
'a_minute' => ':count ⴰⵎⵥⵉ', // less reliable
'second' => ':count sin', // less reliable
's' => ':count sin', // less reliable
'a_second' => ':count sin', // less reliable
]);
src/Carbon/Lang/shi_Latn.php 0000644 00000002366 14753612052 0011706 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/shi.php', [
'meridiem' => ['tifawt', 'tadggʷat'],
'weekdays' => ['asamas', 'aynas', 'asinas', 'akṛas', 'akwas', 'asimwas', 'asiḍyas'],
'weekdays_short' => ['asa', 'ayn', 'asi', 'akṛ', 'akw', 'asim', 'asiḍ'],
'weekdays_min' => ['asa', 'ayn', 'asi', 'akṛ', 'akw', 'asim', 'asiḍ'],
'months' => ['innayr', 'bṛayṛ', 'maṛṣ', 'ibrir', 'mayyu', 'yunyu', 'yulyuz', 'ɣuct', 'cutanbir', 'ktubr', 'nuwanbir', 'dujanbir'],
'months_short' => ['inn', 'bṛa', 'maṛ', 'ibr', 'may', 'yun', 'yul', 'ɣuc', 'cut', 'ktu', 'nuw', 'duj'],
'first_day_of_week' => 6,
'weekend' => [5, 6],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'minute' => ':count agur', // less reliable
'min' => ':count agur', // less reliable
'a_minute' => ':count agur', // less reliable
]);
src/Carbon/Lang/shi_Tfng.php 0000644 00000000414 14753612052 0011676 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/shi.php';
src/Carbon/Lang/shn.php 0000644 00000000517 14753612052 0010731 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/shn_MM.php';
src/Carbon/Lang/shn_MM.php 0000644 00000007736 14753612052 0011334 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - ubuntu Myanmar LoCo Team https://ubuntu-mm.net Bone Pyae Sone bone.burma@mail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'formats' => [
'L' => 'OY MMM OD dddd',
],
'months' => ['လိူၼ်ၵမ်', 'လိူၼ်သၢမ်', 'လိူၼ်သီ', 'လိူၼ်ႁႃႈ', 'လိူၼ်ႁူၵ်း', 'လိူၼ်ၸဵတ်း', 'လိူၼ်ပႅတ်ႇ', 'လိူၼ်ၵဝ်ႈ', 'လိူၼ်သိပ်း', 'လိူၼ်သိပ်းဢိတ်း', 'လိူၼ်သိပ်းဢိတ်းသွင်', 'လိူၼ်ၸဵင်'],
'months_short' => ['လိူၼ်ၵမ်', 'လိူၼ်သၢမ်', 'လိူၼ်သီ', 'လိူၼ်ႁႃႈ', 'လိူၼ်ႁူၵ်း', 'လိူၼ်ၸဵတ်း', 'လိူၼ်ပႅတ်ႇ', 'လိူၼ်ၵဝ်ႈ', 'လိူၼ်သိပ်း', 'လိူၼ်သိပ်းဢိတ်း', 'လိူၼ်သိပ်းဢိတ်းသွင်', 'လိူၼ်ၸဵင်'],
'weekdays' => ['ဝၼ်းဢႃးတိတ်ႉ', 'ဝၼ်းၸၼ်', 'ဝၼ်းဢၢင်းၵၢၼ်း', 'ဝၼ်းပူတ်ႉ', 'ဝၼ်းၽတ်း', 'ဝၼ်းသုၵ်း', 'ဝၼ်းသဝ်'],
'weekdays_short' => ['တိတ့်', 'ၸၼ်', 'ၵၢၼ်း', 'ပုတ့်', 'ၽတ်း', 'သုၵ်း', 'သဝ်'],
'weekdays_min' => ['တိတ့်', 'ၸၼ်', 'ၵၢၼ်း', 'ပုတ့်', 'ၽတ်း', 'သုၵ်း', 'သဝ်'],
'alt_numbers' => ['႐႐', '႐႑', '႐႒', '႐႓', '႐႔', '႐႕', '႐႖', '႐႗', '႐႘', '႐႙', '႑႐', '႑႑', '႑႒', '႑႓', '႑႔', '႑႕', '႑႖', '႑႗', '႑႘', '႑႙', '႒႐', '႒႑', '႒႒', '႒႓', '႒႔', '႒႕', '႒႖', '႒႗', '႒႘', '႒႙', '႓႐', '႓႑', '႓႒', '႓႓', '႓႔', '႓႕', '႓႖', '႓႗', '႓႘', '႓႙', '႔႐', '႔႑', '႔႒', '႔႓', '႔႔', '႔႕', '႔႖', '႔႗', '႔႘', '႔႙', '႕႐', '႕႑', '႕႒', '႕႓', '႕႔', '႕႕', '႕႖', '႕႗', '႕႘', '႕႙', '႖႐', '႖႑', '႖႒', '႖႓', '႖႔', '႖႕', '႖႖', '႖႗', '႖႘', '႖႙', '႗႐', '႗႑', '႗႒', '႗႓', '႗႔', '႗႕', '႗႖', '႗႗', '႗႘', '႗႙', '႘႐', '႘႑', '႘႒', '႘႓', '႘႔', '႘႕', '႘႖', '႘႗', '႘႘', '႘႙', '႙႐', '႙႑', '႙႒', '႙႓', '႙႔', '႙႕', '႙႖', '႙႗', '႙႘', '႙႙'],
'meridiem' => ['ၵၢင်ၼႂ်', 'တၢမ်းၶမ်ႈ'],
'month' => ':count လိူၼ်', // less reliable
'm' => ':count လိူၼ်', // less reliable
'a_month' => ':count လိူၼ်', // less reliable
'week' => ':count ဝၼ်း', // less reliable
'w' => ':count ဝၼ်း', // less reliable
'a_week' => ':count ဝၼ်း', // less reliable
'hour' => ':count ຕີ', // less reliable
'h' => ':count ຕີ', // less reliable
'a_hour' => ':count ຕີ', // less reliable
'minute' => ':count ເດັກ', // less reliable
'min' => ':count ເດັກ', // less reliable
'a_minute' => ':count ເດັກ', // less reliable
'second' => ':count ဢိုၼ်ႇ', // less reliable
's' => ':count ဢိုၼ်ႇ', // less reliable
'a_second' => ':count ဢိုၼ်ႇ', // less reliable
'year' => ':count ပီ',
'y' => ':count ပီ',
'a_year' => ':count ပီ',
'day' => ':count ກາງວັນ',
'd' => ':count ກາງວັນ',
'a_day' => ':count ກາງວັນ',
]);
src/Carbon/Lang/shs.php 0000644 00000000517 14753612052 0010736 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/shs_CA.php';
src/Carbon/Lang/shs_CA.php 0000644 00000003046 14753612052 0011301 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Neskie Manuel bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Pellkwet̓min', 'Pelctsipwen̓ten', 'Pellsqépts', 'Peslléwten', 'Pell7ell7é7llqten', 'Pelltspéntsk', 'Pelltqwelq̓wél̓t', 'Pellct̓éxel̓cten', 'Pesqelqlélten', 'Pesllwélsten', 'Pellc7ell7é7llcwten̓', 'Pelltetétq̓em'],
'months_short' => ['Kwe', 'Tsi', 'Sqe', 'Éwt', 'Ell', 'Tsp', 'Tqw', 'Ct̓é', 'Qel', 'Wél', 'U7l', 'Tet'],
'weekdays' => ['Sxetspesq̓t', 'Spetkesq̓t', 'Selesq̓t', 'Skellesq̓t', 'Smesesq̓t', 'Stselkstesq̓t', 'Stqmekstesq̓t'],
'weekdays_short' => ['Sxe', 'Spe', 'Sel', 'Ske', 'Sme', 'Sts', 'Stq'],
'weekdays_min' => ['Sxe', 'Spe', 'Sel', 'Ske', 'Sme', 'Sts', 'Stq'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => ':count sqlélten', // less reliable
'y' => ':count sqlélten', // less reliable
'a_year' => ':count sqlélten', // less reliable
'month' => ':count swewll', // less reliable
'm' => ':count swewll', // less reliable
'a_month' => ':count swewll', // less reliable
'hour' => ':count seqwlút', // less reliable
'h' => ':count seqwlút', // less reliable
'a_hour' => ':count seqwlút', // less reliable
]);
src/Carbon/Lang/si.php 0000644 00000006535 14753612052 0010562 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Serhan Apaydın
* - JD Isaacks
* - Malinda Weerasinghe (MalindaWMD)
*/
return [
'year' => '{1}වසර 1|වසර :count',
'a_year' => '{1}වසරක්|වසර :count',
'month' => '{1}මාස 1|මාස :count',
'a_month' => '{1}මාසය|මාස :count',
'week' => '{1}සති 1|සති :count',
'a_week' => '{1}සතියක්|සති :count',
'day' => '{1}දින 1|දින :count',
'a_day' => '{1}දිනක්|දින :count',
'hour' => '{1}පැය 1|පැය :count',
'a_hour' => '{1}පැයක්|පැය :count',
'minute' => '{1}මිනිත්තු 1|මිනිත්තු :count',
'a_minute' => '{1}මිනිත්තුවක්|මිනිත්තු :count',
'second' => '{1}තත්පර 1|තත්පර :count',
'a_second' => '{1}තත්පර කිහිපයකට|තත්පර :count',
'ago' => ':time කට පෙර',
'from_now' => static function ($time) {
if (preg_match('/දින \d+/u', $time)) {
return $time.' න්';
}
return $time.' කින්';
},
'before' => ':time කට පෙර',
'after' => static function ($time) {
if (preg_match('/දින \d+/u', $time)) {
return $time.' න්';
}
return $time.' කින්';
},
'diff_now' => 'දැන්',
'diff_today' => 'අද',
'diff_yesterday' => 'ඊයේ',
'diff_tomorrow' => 'හෙට',
'formats' => [
'LT' => 'a h:mm',
'LTS' => 'a h:mm:ss',
'L' => 'YYYY/MM/DD',
'LL' => 'YYYY MMMM D',
'LLL' => 'YYYY MMMM D, a h:mm',
'LLLL' => 'YYYY MMMM D [වැනි] dddd, a h:mm:ss',
],
'calendar' => [
'sameDay' => '[අද] LT[ට]',
'nextDay' => '[හෙට] LT[ට]',
'nextWeek' => 'dddd LT[ට]',
'lastDay' => '[ඊයේ] LT[ට]',
'lastWeek' => '[පසුගිය] dddd LT[ට]',
'sameElse' => 'L',
],
'ordinal' => ':number වැනි',
'meridiem' => ['පෙර වරු', 'පස් වරු', 'පෙ.ව.', 'ප.ව.'],
'months' => ['ජනවාරි', 'පෙබරවාරි', 'මාර්තු', 'අප්රේල්', 'මැයි', 'ජූනි', 'ජූලි', 'අගෝස්තු', 'සැප්තැම්බර්', 'ඔක්තෝබර්', 'නොවැම්බර්', 'දෙසැම්බර්'],
'months_short' => ['ජන', 'පෙබ', 'මාර්', 'අප්', 'මැයි', 'ජූනි', 'ජූලි', 'අගෝ', 'සැප්', 'ඔක්', 'නොවැ', 'දෙසැ'],
'weekdays' => ['ඉරිදා', 'සඳුදා', 'අඟහරුවාදා', 'බදාදා', 'බ්රහස්පතින්දා', 'සිකුරාදා', 'සෙනසුරාදා'],
'weekdays_short' => ['ඉරි', 'සඳු', 'අඟ', 'බදා', 'බ්රහ', 'සිකු', 'සෙන'],
'weekdays_min' => ['ඉ', 'ස', 'අ', 'බ', 'බ්ර', 'සි', 'සෙ'],
'first_day_of_week' => 1,
];
src/Carbon/Lang/si_LK.php 0000644 00000000413 14753612052 0011135 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/si.php';
src/Carbon/Lang/sid.php 0000644 00000000517 14753612052 0010720 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/sid_ET.php';
src/Carbon/Lang/sid_ET.php 0000644 00000001772 14753612052 0011314 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
'weekdays' => ['Sambata', 'Sanyo', 'Maakisanyo', 'Roowe', 'Hamuse', 'Arbe', 'Qidaame'],
'weekdays_short' => ['Sam', 'San', 'Mak', 'Row', 'Ham', 'Arb', 'Qid'],
'weekdays_min' => ['Sam', 'San', 'Mak', 'Row', 'Ham', 'Arb', 'Qid'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['soodo', 'hawwaro'],
]);
src/Carbon/Lang/sk.php 0000644 00000012165 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Martin Suja
* - Tsutomu Kuroda
* - tjku
* - Max Melentiev
* - Juanito Fatas
* - Ivan Stana
* - Akira Matsuda
* - Christopher Dell
* - James McKinney
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Jozef Fulop
* - Nicolás Hock Isaza
* - Tom Hughes
* - Simon Hürlimann (CyT)
* - jofi
* - Jakub ADAMEC
* - Marek Adamický
* - AlterwebStudio
* - Peter Kundis
*/
use Carbon\CarbonInterface;
$fromNow = function ($time) {
return 'o '.strtr($time, [
'hodina' => 'hodinu',
'minúta' => 'minútu',
'sekunda' => 'sekundu',
]);
};
$ago = function ($time) {
$replacements = [
'/\bhodina\b/' => 'hodinou',
'/\bminúta\b/' => 'minútou',
'/\bsekunda\b/' => 'sekundou',
'/\bdeň\b/u' => 'dňom',
'/\btýždeň\b/u' => 'týždňom',
'/\bmesiac\b/' => 'mesiacom',
'/\brok\b/' => 'rokom',
];
$replacementsPlural = [
'/\b(?:hodiny|hodín)\b/' => 'hodinami',
'/\b(?:minúty|minút)\b/' => 'minútami',
'/\b(?:sekundy|sekúnd)\b/' => 'sekundami',
'/\bdeň\b/' => 'dňom',
'/\bdni\b/' => 'dňami',
'/\bdní\b/u' => 'dňami',
'/\b(?:týždne|týždňov)\b/' => 'týždňami',
'/\b(?:mesiace|mesiacov)\b/' => 'mesiacmi',
'/\b(?:roky|rokov)\b/' => 'rokmi',
];
foreach ($replacements + $replacementsPlural as $pattern => $replacement) {
$time = preg_replace($pattern, $replacement, $time);
}
return "pred $time";
};
return [
'year' => ':count rok|:count roky|:count rokov',
'a_year' => 'rok|:count roky|:count rokov',
'y' => ':count r',
'month' => ':count mesiac|:count mesiace|:count mesiacov',
'a_month' => 'mesiac|:count mesiace|:count mesiacov',
'm' => ':count m',
'week' => ':count týždeň|:count týždne|:count týždňov',
'a_week' => 'týždeň|:count týždne|:count týždňov',
'w' => ':count t',
'day' => ':count deň|:count dni|:count dní',
'a_day' => 'deň|:count dni|:count dní',
'd' => ':count d',
'hour' => ':count hodina|:count hodiny|:count hodín',
'a_hour' => 'hodina|:count hodiny|:count hodín',
'h' => ':count h',
'minute' => ':count minúta|:count minúty|:count minút',
'a_minute' => 'minúta|:count minúty|:count minút',
'min' => ':count min',
'second' => ':count sekunda|:count sekundy|:count sekúnd',
'a_second' => 'sekunda|:count sekundy|:count sekúnd',
's' => ':count s',
'millisecond' => ':count milisekunda|:count milisekundy|:count milisekúnd',
'a_millisecond' => 'milisekunda|:count milisekundy|:count milisekúnd',
'ms' => ':count ms',
'microsecond' => ':count mikrosekunda|:count mikrosekundy|:count mikrosekúnd',
'a_microsecond' => 'mikrosekunda|:count mikrosekundy|:count mikrosekúnd',
'µs' => ':count µs',
'ago' => $ago,
'from_now' => $fromNow,
'before' => ':time pred',
'after' => ':time po',
'hour_after' => ':count hodinu|:count hodiny|:count hodín',
'minute_after' => ':count minútu|:count minúty|:count minút',
'second_after' => ':count sekundu|:count sekundy|:count sekúnd',
'hour_before' => ':count hodinu|:count hodiny|:count hodín',
'minute_before' => ':count minútu|:count minúty|:count minút',
'second_before' => ':count sekundu|:count sekundy|:count sekúnd',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' a '],
'diff_now' => 'teraz',
'diff_yesterday' => 'včera',
'diff_tomorrow' => 'zajtra',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'DD. MMMM YYYY',
'LLL' => 'D. M. HH:mm',
'LLLL' => 'dddd D. MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[dnes o] LT',
'nextDay' => '[zajtra o] LT',
'lastDay' => '[včera o] LT',
'nextWeek' => 'dddd [o] LT',
'lastWeek' => static function (CarbonInterface $date) {
switch ($date->dayOfWeek) {
case 1:
case 2:
case 4:
case 5:
return '[minulý] dddd [o] LT'; //pondelok/utorok/štvrtok/piatok
default:
return '[minulá] dddd [o] LT';
}
},
'sameElse' => 'L',
],
'weekdays' => ['nedeľa', 'pondelok', 'utorok', 'streda', 'štvrtok', 'piatok', 'sobota'],
'weekdays_short' => ['ned', 'pon', 'uto', 'str', 'štv', 'pia', 'sob'],
'weekdays_min' => ['ne', 'po', 'ut', 'st', 'št', 'pi', 'so'],
'months' => ['január', 'február', 'marec', 'apríl', 'máj', 'jún', 'júl', 'august', 'september', 'október', 'november', 'december'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'máj', 'jún', 'júl', 'aug', 'sep', 'okt', 'nov', 'dec'],
'meridiem' => ['dopoludnia', 'popoludní'],
];
src/Carbon/Lang/sk_SK.php 0000644 00000000413 14753612052 0011146 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sk.php';
src/Carbon/Lang/sl.php 0000644 00000011401 14753612052 0010551 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Tsutomu Kuroda
* - tjku
* - Max Melentiev
* - Juanito Fatas
* - Akira Matsuda
* - Christopher Dell
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Nicolás Hock Isaza
* - Miha Rebernik
* - Gal Jakič (morpheus7CS)
* - Glavić
* - Anže Časar
* - Lovro Tramšek (Lovro1107)
* - burut13
*/
use Carbon\CarbonInterface;
return [
'year' => ':count leto|:count leti|:count leta|:count let',
'y' => ':count leto|:count leti|:count leta|:count let',
'month' => ':count mesec|:count meseca|:count mesece|:count mesecev',
'm' => ':count mes.',
'week' => ':count teden|:count tedna|:count tedne|:count tednov',
'w' => ':count ted.',
'day' => ':count dan|:count dni|:count dni|:count dni',
'd' => ':count dan|:count dni|:count dni|:count dni',
'hour' => ':count ura|:count uri|:count ure|:count ur',
'h' => ':count h',
'minute' => ':count minuta|:count minuti|:count minute|:count minut',
'min' => ':count min.',
'second' => ':count sekunda|:count sekundi|:count sekunde|:count sekund',
'a_second' => '{1}nekaj sekund|:count sekunda|:count sekundi|:count sekunde|:count sekund',
's' => ':count s',
'year_ago' => ':count letom|:count letoma|:count leti|:count leti',
'y_ago' => ':count letom|:count letoma|:count leti|:count leti',
'month_ago' => ':count mesecem|:count mesecema|:count meseci|:count meseci',
'week_ago' => ':count tednom|:count tednoma|:count tedni|:count tedni',
'day_ago' => ':count dnem|:count dnevoma|:count dnevi|:count dnevi',
'd_ago' => ':count dnem|:count dnevoma|:count dnevi|:count dnevi',
'hour_ago' => ':count uro|:count urama|:count urami|:count urami',
'minute_ago' => ':count minuto|:count minutama|:count minutami|:count minutami',
'second_ago' => ':count sekundo|:count sekundama|:count sekundami|:count sekundami',
'day_from_now' => ':count dan|:count dneva|:count dni|:count dni',
'd_from_now' => ':count dan|:count dneva|:count dni|:count dni',
'hour_from_now' => ':count uro|:count uri|:count ure|:count ur',
'minute_from_now' => ':count minuto|:count minuti|:count minute|:count minut',
'second_from_now' => ':count sekundo|:count sekundi|:count sekunde|:count sekund',
'ago' => 'pred :time',
'from_now' => 'čez :time',
'after' => ':time kasneje',
'before' => ':time prej',
'diff_now' => 'ravnokar',
'diff_today' => 'danes',
'diff_today_regexp' => 'danes(?:\\s+ob)?',
'diff_yesterday' => 'včeraj',
'diff_yesterday_regexp' => 'včeraj(?:\\s+ob)?',
'diff_tomorrow' => 'jutri',
'diff_tomorrow_regexp' => 'jutri(?:\\s+ob)?',
'diff_before_yesterday' => 'predvčerajšnjim',
'diff_after_tomorrow' => 'pojutrišnjem',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'period_start_date' => 'od :date',
'period_end_date' => 'do :date',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY H:mm',
'LLLL' => 'dddd, D. MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[danes ob] LT',
'nextDay' => '[jutri ob] LT',
'nextWeek' => 'dddd [ob] LT',
'lastDay' => '[včeraj ob] LT',
'lastWeek' => static function (CarbonInterface $date) {
switch ($date->dayOfWeek) {
case 0:
return '[preteklo] [nedeljo] [ob] LT';
case 1:
return '[pretekli] [ponedeljek] [ob] LT';
case 2:
return '[pretekli] [torek] [ob] LT';
case 3:
return '[preteklo] [sredo] [ob] LT';
case 4:
return '[pretekli] [četrtek] [ob] LT';
case 5:
return '[pretekli] [petek] [ob] LT';
case 6:
return '[preteklo] [soboto] [ob] LT';
}
},
'sameElse' => 'L',
],
'months' => ['januar', 'februar', 'marec', 'april', 'maj', 'junij', 'julij', 'avgust', 'september', 'oktober', 'november', 'december'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'avg', 'sep', 'okt', 'nov', 'dec'],
'weekdays' => ['nedelja', 'ponedeljek', 'torek', 'sreda', 'četrtek', 'petek', 'sobota'],
'weekdays_short' => ['ned', 'pon', 'tor', 'sre', 'čet', 'pet', 'sob'],
'weekdays_min' => ['ne', 'po', 'to', 'sr', 'če', 'pe', 'so'],
'list' => [', ', ' in '],
'meridiem' => ['dopoldan', 'popoldan'],
];
src/Carbon/Lang/sl_SI.php 0000644 00000000413 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sl.php';
src/Carbon/Lang/sm.php 0000644 00000000516 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/sm_WS.php';
src/Carbon/Lang/sm_WS.php 0000644 00000003424 14753612052 0011171 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Samsung Electronics Co., Ltd. akhilesh.k@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Ianuari', 'Fepuari', 'Mati', 'Aperila', 'Me', 'Iuni', 'Iulai', 'Auguso', 'Setema', 'Oketopa', 'Novema', 'Tesema'],
'months_short' => ['Ian', 'Fep', 'Mat', 'Ape', 'Me', 'Iun', 'Iul', 'Aug', 'Set', 'Oke', 'Nov', 'Tes'],
'weekdays' => ['Aso Sa', 'Aso Gafua', 'Aso Lua', 'Aso Lulu', 'Aso Tofi', 'Aso Farail', 'Aso To\'ana\'i'],
'weekdays_short' => ['Aso Sa', 'Aso Gaf', 'Aso Lua', 'Aso Lul', 'Aso Tof', 'Aso Far', 'Aso To\''],
'weekdays_min' => ['Aso Sa', 'Aso Gaf', 'Aso Lua', 'Aso Lul', 'Aso Tof', 'Aso Far', 'Aso To\''],
'hour' => ':count uati', // less reliable
'h' => ':count uati', // less reliable
'a_hour' => ':count uati', // less reliable
'minute' => ':count itiiti', // less reliable
'min' => ':count itiiti', // less reliable
'a_minute' => ':count itiiti', // less reliable
'second' => ':count lua', // less reliable
's' => ':count lua', // less reliable
'a_second' => ':count lua', // less reliable
'year' => ':count tausaga',
'y' => ':count tausaga',
'a_year' => ':count tausaga',
'month' => ':count māsina',
'm' => ':count māsina',
'a_month' => ':count māsina',
'week' => ':count vaiaso',
'w' => ':count vaiaso',
'a_week' => ':count vaiaso',
'day' => ':count aso',
'd' => ':count aso',
'a_day' => ':count aso',
]);
src/Carbon/Lang/smn.php 0000644 00000004006 14753612052 0010733 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['ip.', 'ep.'],
'weekdays' => ['pasepeeivi', 'vuossaargâ', 'majebaargâ', 'koskoho', 'tuorâstuv', 'vástuppeeivi', 'lávurduv'],
'weekdays_short' => ['pas', 'vuo', 'maj', 'kos', 'tuo', 'vás', 'láv'],
'weekdays_min' => ['pa', 'vu', 'ma', 'ko', 'tu', 'vá', 'lá'],
'weekdays_standalone' => ['pasepeivi', 'vuossargâ', 'majebargâ', 'koskokko', 'tuorâstâh', 'vástuppeivi', 'lávurdâh'],
'months' => ['uđđâivemáánu', 'kuovâmáánu', 'njuhčâmáánu', 'cuáŋuimáánu', 'vyesimáánu', 'kesimáánu', 'syeinimáánu', 'porgemáánu', 'čohčâmáánu', 'roovvâdmáánu', 'skammâmáánu', 'juovlâmáánu'],
'months_short' => ['uđiv', 'kuovâ', 'njuhčâ', 'cuáŋui', 'vyesi', 'kesi', 'syeini', 'porge', 'čohčâ', 'roovvâd', 'skammâ', 'juovlâ'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'H.mm',
'LTS' => 'H.mm.ss',
'L' => 'D.M.YYYY',
'LL' => 'MMM D. YYYY',
'LLL' => 'MMMM D. YYYY H.mm',
'LLLL' => 'dddd, MMMM D. YYYY H.mm',
],
'hour' => ':count äigi', // less reliable
'h' => ':count äigi', // less reliable
'a_hour' => ':count äigi', // less reliable
'year' => ':count ihe',
'y' => ':count ihe',
'a_year' => ':count ihe',
'month' => ':count mánuppaje',
'm' => ':count mánuppaje',
'a_month' => ':count mánuppaje',
'week' => ':count okko',
'w' => ':count okko',
'a_week' => ':count okko',
'day' => ':count peivi',
'd' => ':count peivi',
'a_day' => ':count peivi',
'minute' => ':count miinut',
'min' => ':count miinut',
'a_minute' => ':count miinut',
'second' => ':count nubbe',
's' => ':count nubbe',
'a_second' => ':count nubbe',
]);
src/Carbon/Lang/sn.php 0000644 00000003313 14753612052 0010556 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'meridiem' => ['a', 'p'],
'weekdays' => ['Svondo', 'Muvhuro', 'Chipiri', 'Chitatu', 'China', 'Chishanu', 'Mugovera'],
'weekdays_short' => ['Svo', 'Muv', 'Chp', 'Cht', 'Chn', 'Chs', 'Mug'],
'weekdays_min' => ['Sv', 'Mu', 'Cp', 'Ct', 'Cn', 'Cs', 'Mg'],
'months' => ['Ndira', 'Kukadzi', 'Kurume', 'Kubvumbi', 'Chivabvu', 'Chikumi', 'Chikunguru', 'Nyamavhuvhu', 'Gunyana', 'Gumiguru', 'Mbudzi', 'Zvita'],
'months_short' => ['Ndi', 'Kuk', 'Kur', 'Kub', 'Chv', 'Chk', 'Chg', 'Nya', 'Gun', 'Gum', 'Mbu', 'Zvi'],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'YYYY MMMM D, dddd HH:mm',
],
'year' => 'makore :count',
'y' => 'makore :count',
'a_year' => 'makore :count',
'month' => 'mwedzi :count',
'm' => 'mwedzi :count',
'a_month' => 'mwedzi :count',
'week' => 'vhiki :count',
'w' => 'vhiki :count',
'a_week' => 'vhiki :count',
'day' => 'mazuva :count',
'd' => 'mazuva :count',
'a_day' => 'mazuva :count',
'hour' => 'maawa :count',
'h' => 'maawa :count',
'a_hour' => 'maawa :count',
'minute' => 'minitsi :count',
'min' => 'minitsi :count',
'a_minute' => 'minitsi :count',
'second' => 'sekonzi :count',
's' => 'sekonzi :count',
'a_second' => 'sekonzi :count',
]);
src/Carbon/Lang/so.php 0000644 00000005301 14753612052 0010556 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Author:
* - Abdifatah Abdilahi(@abdifatahz)
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'year' => ':count sanad|:count sanadood',
'a_year' => 'sanad|:count sanadood',
'y' => '{1}:countsn|{0}:countsns|]1,Inf[:countsn',
'month' => ':count bil|:count bilood',
'a_month' => 'bil|:count bilood',
'm' => ':countbil',
'week' => ':count isbuuc',
'a_week' => 'isbuuc|:count isbuuc',
'w' => ':countis',
'day' => ':count maalin|:count maalmood',
'a_day' => 'maalin|:count maalmood',
'd' => ':countml',
'hour' => ':count saac',
'a_hour' => 'saacad|:count saac',
'h' => ':countsc',
'minute' => ':count daqiiqo',
'a_minute' => 'daqiiqo|:count daqiiqo',
'min' => ':countdq',
'second' => ':count ilbidhiqsi',
'a_second' => 'xooga ilbidhiqsiyo|:count ilbidhiqsi',
's' => ':countil',
'ago' => ':time kahor',
'from_now' => ':time gudahood',
'after' => ':time kedib',
'before' => ':time kahor',
'diff_now' => 'hada',
'diff_today' => 'maanta',
'diff_today_regexp' => 'maanta(?:\s+markay\s+(?:tahay|ahayd))?',
'diff_yesterday' => 'shalayto',
'diff_yesterday_regexp' => 'shalayto(?:\s+markay\s+ahayd)?',
'diff_tomorrow' => 'beri',
'diff_tomorrow_regexp' => 'beri(?:\s+markay\s+tahay)?',
'diff_before_yesterday' => 'doraato',
'diff_after_tomorrow' => 'saadanbe',
'period_recurrences' => 'mar|:count jeer',
'period_interval' => ':interval kasta',
'period_start_date' => 'laga bilaabo :date',
'period_end_date' => 'ilaa :date',
'months' => ['Janaayo', 'Febraayo', 'Abriil', 'Maajo', 'Juun', 'Luuliyo', 'Agoosto', 'Sebteembar', 'Oktoobar', 'Nofeembar', 'Diseembar'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Abr', 'Mjo', 'Jun', 'Lyo', 'Agt', 'Seb', 'Okt', 'Nof', 'Dis'],
'weekdays' => ['Axad', 'Isniin', 'Talaada', 'Arbaca', 'Khamiis', 'Jimce', 'Sabti'],
'weekdays_short' => ['Axd', 'Isn', 'Tal', 'Arb', 'Kha', 'Jim', 'Sbt'],
'weekdays_min' => ['Ax', 'Is', 'Ta', 'Ar', 'Kh', 'Ji', 'Sa'],
'list' => [', ', ' and '],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'formats' => [
'L' => 'DD/MM/YYYY',
],
'calendar' => [
'sameDay' => '[Maanta markay tahay] LT',
'nextDay' => '[Beri markay tahay] LT',
'nextWeek' => 'dddd [markay tahay] LT',
'lastDay' => '[Shalay markay ahayd] LT',
'lastWeek' => '[Hore] dddd [Markay ahayd] LT',
'sameElse' => 'L',
],
]);
src/Carbon/Lang/so_DJ.php 0000644 00000000646 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/so.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
]);
src/Carbon/Lang/so_ET.php 0000644 00000000521 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return require __DIR__.'/so.php';
src/Carbon/Lang/so_KE.php 0000644 00000000521 14753612052 0011134 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return require __DIR__.'/so.php';
src/Carbon/Lang/so_SO.php 0000644 00000000521 14753612052 0011156 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return require __DIR__.'/so.php';
src/Carbon/Lang/sq.php 0000644 00000005126 14753612052 0010565 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - JD Isaacks
* - Fadion Dashi
*/
return [
'year' => ':count vit|:count vjet',
'a_year' => 'një vit|:count vite',
'y' => ':count v.',
'month' => ':count muaj',
'a_month' => 'një muaj|:count muaj',
'm' => ':count muaj',
'week' => ':count javë',
'a_week' => ':count javë|:count javë',
'w' => ':count j.',
'day' => ':count ditë',
'a_day' => 'një ditë|:count ditë',
'd' => ':count d.',
'hour' => ':count orë',
'a_hour' => 'një orë|:count orë',
'h' => ':count o.',
'minute' => ':count minutë|:count minuta',
'a_minute' => 'një minutë|:count minuta',
'min' => ':count min.',
'second' => ':count sekondë|:count sekonda',
'a_second' => 'disa sekonda|:count sekonda',
's' => ':count s.',
'ago' => ':time më parë',
'from_now' => 'në :time',
'after' => ':time pas',
'before' => ':time para',
'diff_now' => 'tani',
'diff_today' => 'Sot',
'diff_today_regexp' => 'Sot(?:\\s+në)?',
'diff_yesterday' => 'dje',
'diff_yesterday_regexp' => 'Dje(?:\\s+në)?',
'diff_tomorrow' => 'nesër',
'diff_tomorrow_regexp' => 'Nesër(?:\\s+në)?',
'diff_before_yesterday' => 'pardje',
'diff_after_tomorrow' => 'pasnesër',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Sot në] LT',
'nextDay' => '[Nesër në] LT',
'nextWeek' => 'dddd [në] LT',
'lastDay' => '[Dje në] LT',
'lastWeek' => 'dddd [e kaluar në] LT',
'sameElse' => 'L',
],
'ordinal' => ':number.',
'meridiem' => ['PD', 'MD'],
'months' => ['janar', 'shkurt', 'mars', 'prill', 'maj', 'qershor', 'korrik', 'gusht', 'shtator', 'tetor', 'nëntor', 'dhjetor'],
'months_short' => ['jan', 'shk', 'mar', 'pri', 'maj', 'qer', 'kor', 'gus', 'sht', 'tet', 'nën', 'dhj'],
'weekdays' => ['e diel', 'e hënë', 'e martë', 'e mërkurë', 'e enjte', 'e premte', 'e shtunë'],
'weekdays_short' => ['die', 'hën', 'mar', 'mër', 'enj', 'pre', 'sht'],
'weekdays_min' => ['d', 'h', 'ma', 'më', 'e', 'p', 'sh'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' dhe '],
];
src/Carbon/Lang/sq_AL.php 0000644 00000000413 14753612052 0011133 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sq.php';
src/Carbon/Lang/sq_MK.php 0000644 00000000721 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/sq.php', [
'formats' => [
'L' => 'D.M.YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY, HH:mm',
'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
],
]);
src/Carbon/Lang/sq_XK.php 0000644 00000000721 14753612052 0011163 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/sq.php', [
'formats' => [
'L' => 'D.M.YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY, HH:mm',
'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
],
]);
src/Carbon/Lang/sr.php 0000644 00000006524 14753612052 0010571 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - shaishavgandhi05
* - Serhan Apaydın
* - JD Isaacks
* - Glavić
* - Milos Sakovic
*/
use Carbon\CarbonInterface;
return [
'year' => ':count godina|:count godine|:count godina',
'y' => ':count g.',
'month' => ':count mesec|:count meseca|:count meseci',
'm' => ':count mj.',
'week' => ':count nedelja|:count nedelje|:count nedelja',
'w' => ':count ned.',
'day' => ':count dan|:count dana|:count dana',
'd' => ':count d.',
'hour' => ':count sat|:count sata|:count sati',
'h' => ':count č.',
'minute' => ':count minut|:count minuta|:count minuta',
'min' => ':count min.',
'second' => ':count sekundu|:count sekunde|:count sekundi',
's' => ':count sek.',
'ago' => 'pre :time',
'from_now' => 'za :time',
'after' => 'nakon :time',
'before' => 'pre :time',
'year_ago' => ':count godinu|:count godine|:count godina',
'year_from_now' => ':count godinu|:count godine|:count godina',
'week_ago' => ':count nedelju|:count nedelje|:count nedelja',
'week_from_now' => ':count nedelju|:count nedelje|:count nedelja',
'diff_now' => 'upravo sada',
'diff_today' => 'danas',
'diff_today_regexp' => 'danas(?:\\s+u)?',
'diff_yesterday' => 'juče',
'diff_yesterday_regexp' => 'juče(?:\\s+u)?',
'diff_tomorrow' => 'sutra',
'diff_tomorrow_regexp' => 'sutra(?:\\s+u)?',
'diff_before_yesterday' => 'prekjuče',
'diff_after_tomorrow' => 'preksutra',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY H:mm',
'LLLL' => 'dddd, D. MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[danas u] LT',
'nextDay' => '[sutra u] LT',
'nextWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[u nedelju u] LT',
3 => '[u sredu u] LT',
6 => '[u subotu u] LT',
default => '[u] dddd [u] LT',
},
'lastDay' => '[juče u] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[prošle nedelje u] LT',
1 => '[prošlog ponedeljka u] LT',
2 => '[prošlog utorka u] LT',
3 => '[prošle srede u] LT',
4 => '[prošlog četvrtka u] LT',
5 => '[prošlog petka u] LT',
default => '[prošle subote u] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],
'months_short' => ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],
'weekdays' => ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota'],
'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sre.', 'čet.', 'pet.', 'sub.'],
'weekdays_min' => ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' i '],
];
src/Carbon/Lang/sr_Cyrl.php 0000644 00000007676 14753612052 0011573 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - shaishavgandhi05
* - Serhan Apaydın
* - JD Isaacks
* - Glavić
* - Nikola Zeravcic
* - Milos Sakovic
*/
use Carbon\CarbonInterface;
return [
'year' => ':count година|:count године|:count година',
'y' => ':count г.',
'month' => ':count месец|:count месеца|:count месеци',
'm' => ':count м.',
'week' => ':count недеља|:count недеље|:count недеља',
'w' => ':count нед.',
'day' => ':count дан|:count дана|:count дана',
'd' => ':count д.',
'hour' => ':count сат|:count сата|:count сати',
'h' => ':count ч.',
'minute' => ':count минут|:count минута|:count минута',
'min' => ':count мин.',
'second' => ':count секунд|:count секунде|:count секунди',
's' => ':count сек.',
'ago' => 'пре :time',
'from_now' => 'за :time',
'after' => ':time након',
'before' => ':time пре',
'year_from_now' => ':count годину|:count године|:count година',
'year_ago' => ':count годину|:count године|:count година',
'week_from_now' => ':count недељу|:count недеље|:count недеља',
'week_ago' => ':count недељу|:count недеље|:count недеља',
'diff_now' => 'управо сада',
'diff_today' => 'данас',
'diff_today_regexp' => 'данас(?:\\s+у)?',
'diff_yesterday' => 'јуче',
'diff_yesterday_regexp' => 'јуче(?:\\s+у)?',
'diff_tomorrow' => 'сутра',
'diff_tomorrow_regexp' => 'сутра(?:\\s+у)?',
'diff_before_yesterday' => 'прекјуче',
'diff_after_tomorrow' => 'прекосутра',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY H:mm',
'LLLL' => 'dddd, D. MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[данас у] LT',
'nextDay' => '[сутра у] LT',
'nextWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[у недељу у] LT',
3 => '[у среду у] LT',
6 => '[у суботу у] LT',
default => '[у] dddd [у] LT',
},
'lastDay' => '[јуче у] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[прошле недеље у] LT',
1 => '[прошлог понедељка у] LT',
2 => '[прошлог уторка у] LT',
3 => '[прошле среде у] LT',
4 => '[прошлог четвртка у] LT',
5 => '[прошлог петка у] LT',
default => '[прошле суботе у] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар'],
'months_short' => ['јан.', 'феб.', 'мар.', 'апр.', 'мај', 'јун', 'јул', 'авг.', 'сеп.', 'окт.', 'нов.', 'дец.'],
'weekdays' => ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
'weekdays_short' => ['нед.', 'пон.', 'уто.', 'сре.', 'чет.', 'пет.', 'суб.'],
'weekdays_min' => ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' и '],
'meridiem' => ['АМ', 'ПМ'],
];
src/Carbon/Lang/sr_Cyrl_BA.php 0000644 00000002047 14753612052 0012120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return PluralizationRules::get($number, 'sr');
}, 'sr_Cyrl_BA');
}
// @codeCoverageIgnoreEnd
return array_replace_recursive(require __DIR__.'/sr_Cyrl.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D.M.yy.',
'LL' => 'DD.MM.YYYY.',
'LLL' => 'DD. MMMM YYYY. HH:mm',
'LLLL' => 'dddd, DD. MMMM YYYY. HH:mm',
],
'weekdays' => ['недјеља', 'понедељак', 'уторак', 'сриједа', 'четвртак', 'петак', 'субота'],
'weekdays_short' => ['нед.', 'пон.', 'ут.', 'ср.', 'чет.', 'пет.', 'суб.'],
]);
src/Carbon/Lang/sr_Cyrl_ME.php 0000644 00000010227 14753612052 0012136 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Glavić
* - Milos Sakovic
*/
use Carbon\CarbonInterface;
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return PluralizationRules::get($number, 'sr');
}, 'sr_Cyrl_ME');
}
// @codeCoverageIgnoreEnd
return [
'year' => ':count година|:count године|:count година',
'y' => ':count г.',
'month' => ':count мјесец|:count мјесеца|:count мјесеци',
'm' => ':count мј.',
'week' => ':count недјеља|:count недјеље|:count недјеља',
'w' => ':count нед.',
'day' => ':count дан|:count дана|:count дана',
'd' => ':count д.',
'hour' => ':count сат|:count сата|:count сати',
'h' => ':count ч.',
'minute' => ':count минут|:count минута|:count минута',
'min' => ':count мин.',
'second' => ':count секунд|:count секунде|:count секунди',
's' => ':count сек.',
'ago' => 'прије :time',
'from_now' => 'за :time',
'after' => ':time након',
'before' => ':time прије',
'year_from_now' => ':count годину|:count године|:count година',
'year_ago' => ':count годину|:count године|:count година',
'week_from_now' => ':count недјељу|:count недјеље|:count недјеља',
'week_ago' => ':count недјељу|:count недјеље|:count недјеља',
'diff_now' => 'управо сада',
'diff_today' => 'данас',
'diff_today_regexp' => 'данас(?:\\s+у)?',
'diff_yesterday' => 'јуче',
'diff_yesterday_regexp' => 'јуче(?:\\s+у)?',
'diff_tomorrow' => 'сутра',
'diff_tomorrow_regexp' => 'сутра(?:\\s+у)?',
'diff_before_yesterday' => 'прекјуче',
'diff_after_tomorrow' => 'прекосјутра',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM YYYY',
'LLL' => 'D. MMMM YYYY H:mm',
'LLLL' => 'dddd, D. MMMM YYYY H:mm',
],
'calendar' => [
'sameDay' => '[данас у] LT',
'nextDay' => '[сутра у] LT',
'nextWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[у недељу у] LT',
3 => '[у среду у] LT',
6 => '[у суботу у] LT',
default => '[у] dddd [у] LT',
},
'lastDay' => '[јуче у] LT',
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[прошле недеље у] LT',
1 => '[прошлог понедељка у] LT',
2 => '[прошлог уторка у] LT',
3 => '[прошле среде у] LT',
4 => '[прошлог четвртка у] LT',
5 => '[прошлог петка у] LT',
default => '[прошле суботе у] LT',
},
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар'],
'months_short' => ['јан.', 'феб.', 'мар.', 'апр.', 'мај', 'јун', 'јул', 'авг.', 'сеп.', 'окт.', 'нов.', 'дец.'],
'weekdays' => ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
'weekdays_short' => ['нед.', 'пон.', 'уто.', 'сре.', 'чет.', 'пет.', 'суб.'],
'weekdays_min' => ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' и '],
'meridiem' => ['АМ', 'ПМ'],
];
src/Carbon/Lang/sr_Cyrl_XK.php 0000644 00000001337 14753612052 0012161 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return PluralizationRules::get($number, 'sr');
}, 'sr_Cyrl_XK');
}
// @codeCoverageIgnoreEnd
return array_replace_recursive(require __DIR__.'/sr_Cyrl_BA.php', [
'weekdays' => ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
]);
src/Carbon/Lang/sr_Latn.php 0000644 00000000413 14753612052 0011536 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sr.php';
src/Carbon/Lang/sr_Latn_BA.php 0000644 00000001750 14753612052 0012105 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return PluralizationRules::get($number, 'sr');
}, 'sr_Latn_BA');
}
// @codeCoverageIgnoreEnd
return array_replace_recursive(require __DIR__.'/sr_Latn.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D.M.yy.',
'LL' => 'DD.MM.YYYY.',
'LLL' => 'DD. MMMM YYYY. HH:mm',
'LLLL' => 'dddd, DD. MMMM YYYY. HH:mm',
],
'weekdays' => ['nedjelja', 'ponedeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
'weekdays_short' => ['ned.', 'pon.', 'ut.', 'sr.', 'čet.', 'pet.', 'sub.'],
]);
src/Carbon/Lang/sr_Latn_ME.php 0000644 00000004116 14753612052 0012123 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Glavić
* - Milos Sakovic
*/
use Carbon\CarbonInterface;
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return PluralizationRules::get($number, 'sr');
}, 'sr_Latn_ME');
}
// @codeCoverageIgnoreEnd
return array_replace_recursive(require __DIR__.'/sr.php', [
'month' => ':count mjesec|:count mjeseca|:count mjeseci',
'week' => ':count nedjelja|:count nedjelje|:count nedjelja',
'second' => ':count sekund|:count sekunde|:count sekundi',
'ago' => 'prije :time',
'from_now' => 'za :time',
'after' => ':time nakon',
'before' => ':time prije',
'week_from_now' => ':count nedjelju|:count nedjelje|:count nedjelja',
'week_ago' => ':count nedjelju|:count nedjelje|:count nedjelja',
'second_ago' => ':count sekund|:count sekunde|:count sekundi',
'diff_tomorrow' => 'sjutra',
'calendar' => [
'nextDay' => '[sjutra u] LT',
'nextWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[u nedjelju u] LT',
3 => '[u srijedu u] LT',
6 => '[u subotu u] LT',
default => '[u] dddd [u] LT',
},
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0 => '[prošle nedjelje u] LT',
1 => '[prošle nedjelje u] LT',
2 => '[prošlog utorka u] LT',
3 => '[prošle srijede u] LT',
4 => '[prošlog četvrtka u] LT',
5 => '[prošlog petka u] LT',
default => '[prošle subote u] LT',
},
],
'weekdays' => ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
'weekdays_short' => ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
]);
src/Carbon/Lang/sr_Latn_XK.php 0000644 00000001265 14753612052 0012146 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Symfony\Component\Translation\PluralizationRules;
// @codeCoverageIgnoreStart
if (class_exists(PluralizationRules::class)) {
PluralizationRules::set(static function ($number) {
return PluralizationRules::get($number, 'sr');
}, 'sr_Latn_XK');
}
// @codeCoverageIgnoreEnd
return array_replace_recursive(require __DIR__.'/sr_Latn_BA.php', [
'weekdays' => ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota'],
]);
src/Carbon/Lang/sr_ME.php 0000644 00000000423 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sr_Latn_ME.php';
src/Carbon/Lang/sr_RS.php 0000644 00000000543 14753612052 0011170 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - sr_YU, sr_CS locale Danilo Segan bug-glibc-locales@gnu.org
*/
return require __DIR__.'/sr_Cyrl.php';
src/Carbon/Lang/sr_RS@latin.php 0000644 00000000413 14753612052 0012314 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sr.php';
src/Carbon/Lang/ss.php 0000644 00000005007 14753612052 0010565 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Nicolai Davies
*/
return [
'year' => '{1}umnyaka|:count iminyaka',
'month' => '{1}inyanga|:count tinyanga',
'week' => '{1}:count liviki|:count emaviki',
'day' => '{1}lilanga|:count emalanga',
'hour' => '{1}lihora|:count emahora',
'minute' => '{1}umzuzu|:count emizuzu',
'second' => '{1}emizuzwana lomcane|:count mzuzwana',
'ago' => 'wenteka nga :time',
'from_now' => 'nga :time',
'diff_yesterday' => 'Itolo',
'diff_yesterday_regexp' => 'Itolo(?:\\s+nga)?',
'diff_today' => 'Namuhla',
'diff_today_regexp' => 'Namuhla(?:\\s+nga)?',
'diff_tomorrow' => 'Kusasa',
'diff_tomorrow_regexp' => 'Kusasa(?:\\s+nga)?',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY h:mm A',
'LLLL' => 'dddd, D MMMM YYYY h:mm A',
],
'calendar' => [
'sameDay' => '[Namuhla nga] LT',
'nextDay' => '[Kusasa nga] LT',
'nextWeek' => 'dddd [nga] LT',
'lastDay' => '[Itolo nga] LT',
'lastWeek' => 'dddd [leliphelile] [nga] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
$lastDigit = $number % 10;
return $number.(
((int) ($number % 100 / 10) === 1) ? 'e' : (
($lastDigit === 1 || $lastDigit === 2) ? 'a' : 'e'
)
);
},
'meridiem' => static function ($hour) {
if ($hour < 11) {
return 'ekuseni';
}
if ($hour < 15) {
return 'emini';
}
if ($hour < 19) {
return 'entsambama';
}
return 'ebusuku';
},
'months' => ['Bhimbidvwane', 'Indlovana', 'Indlov\'lenkhulu', 'Mabasa', 'Inkhwekhweti', 'Inhlaba', 'Kholwane', 'Ingci', 'Inyoni', 'Imphala', 'Lweti', 'Ingongoni'],
'months_short' => ['Bhi', 'Ina', 'Inu', 'Mab', 'Ink', 'Inh', 'Kho', 'Igc', 'Iny', 'Imp', 'Lwe', 'Igo'],
'weekdays' => ['Lisontfo', 'Umsombuluko', 'Lesibili', 'Lesitsatfu', 'Lesine', 'Lesihlanu', 'Umgcibelo'],
'weekdays_short' => ['Lis', 'Umb', 'Lsb', 'Les', 'Lsi', 'Lsh', 'Umg'],
'weekdays_min' => ['Li', 'Us', 'Lb', 'Lt', 'Ls', 'Lh', 'Ug'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
];
src/Carbon/Lang/ss_ZA.php 0000644 00000000413 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/ss.php';
src/Carbon/Lang/st.php 0000644 00000000516 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/st_ZA.php';
src/Carbon/Lang/st_ZA.php 0000644 00000003673 14753612052 0011167 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Pherekgong', 'Hlakola', 'Tlhakubele', 'Mmese', 'Motsheanong', 'Phupjane', 'Phupu', 'Phato', 'Leotse', 'Mphalane', 'Pudungwana', 'Tshitwe'],
'months_short' => ['Phe', 'Hla', 'TlH', 'Mme', 'Mot', 'Jan', 'Upu', 'Pha', 'Leo', 'Mph', 'Pud', 'Tsh'],
'weekdays' => ['Sontaha', 'Mantaha', 'Labobedi', 'Laboraro', 'Labone', 'Labohlano', 'Moqebelo'],
'weekdays_short' => ['Son', 'Mma', 'Bed', 'Rar', 'Ne', 'Hla', 'Moq'],
'weekdays_min' => ['Son', 'Mma', 'Bed', 'Rar', 'Ne', 'Hla', 'Moq'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'week' => ':count Sontaha', // less reliable
'w' => ':count Sontaha', // less reliable
'a_week' => ':count Sontaha', // less reliable
'day' => ':count letsatsi', // less reliable
'd' => ':count letsatsi', // less reliable
'a_day' => ':count letsatsi', // less reliable
'hour' => ':count sešupanako', // less reliable
'h' => ':count sešupanako', // less reliable
'a_hour' => ':count sešupanako', // less reliable
'minute' => ':count menyane', // less reliable
'min' => ':count menyane', // less reliable
'a_minute' => ':count menyane', // less reliable
'second' => ':count thusa', // less reliable
's' => ':count thusa', // less reliable
'a_second' => ':count thusa', // less reliable
'year' => ':count selemo',
'y' => ':count selemo',
'a_year' => ':count selemo',
'month' => ':count kgwedi',
'm' => ':count kgwedi',
'a_month' => ':count kgwedi',
]);
src/Carbon/Lang/sv.php 0000644 00000005447 14753612052 0010600 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Kristoffer Snabb
* - JD Isaacks
* - Jens Herlevsen
* - Nightpine
* - Anders Nygren (litemerafrukt)
*/
return [
'year' => ':count år',
'a_year' => 'ett år|:count år',
'y' => ':count år',
'month' => ':count månad|:count månader',
'a_month' => 'en månad|:count månader',
'm' => ':count mån',
'week' => ':count vecka|:count veckor',
'a_week' => 'en vecka|:count veckor',
'w' => ':count v',
'day' => ':count dag|:count dagar',
'a_day' => 'en dag|:count dagar',
'd' => ':count dgr',
'hour' => ':count timme|:count timmar',
'a_hour' => 'en timme|:count timmar',
'h' => ':count tim',
'minute' => ':count minut|:count minuter',
'a_minute' => 'en minut|:count minuter',
'min' => ':count min',
'second' => ':count sekund|:count sekunder',
'a_second' => 'några sekunder|:count sekunder',
's' => ':count s',
'ago' => 'för :time sedan',
'from_now' => 'om :time',
'after' => ':time efter',
'before' => ':time före',
'diff_now' => 'nu',
'diff_today' => 'I dag',
'diff_yesterday' => 'i går',
'diff_yesterday_regexp' => 'I går',
'diff_tomorrow' => 'i morgon',
'diff_tomorrow_regexp' => 'I morgon',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY [kl.] HH:mm',
'LLLL' => 'dddd D MMMM YYYY [kl.] HH:mm',
],
'calendar' => [
'sameDay' => '[I dag] LT',
'nextDay' => '[I morgon] LT',
'nextWeek' => '[På] dddd LT',
'lastDay' => '[I går] LT',
'lastWeek' => '[I] dddd[s] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
$lastDigit = $number % 10;
return $number.(
((int) ($number % 100 / 10) === 1) ? 'e' : (
($lastDigit === 1 || $lastDigit === 2) ? 'a' : 'e'
)
);
},
'months' => ['januari', 'februari', 'mars', 'april', 'maj', 'juni', 'juli', 'augusti', 'september', 'oktober', 'november', 'december'],
'months_short' => ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec'],
'weekdays' => ['söndag', 'måndag', 'tisdag', 'onsdag', 'torsdag', 'fredag', 'lördag'],
'weekdays_short' => ['sön', 'mån', 'tis', 'ons', 'tors', 'fre', 'lör'],
'weekdays_min' => ['sö', 'må', 'ti', 'on', 'to', 'fr', 'lö'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' och '],
'meridiem' => ['fm', 'em'],
];
src/Carbon/Lang/sv_AX.php 0000644 00000000720 14753612052 0011155 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/sv.php', [
'formats' => [
'L' => 'YYYY-MM-dd',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/sv_FI.php 0000644 00000000413 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sv.php';
src/Carbon/Lang/sv_SE.php 0000644 00000000413 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/sv.php';
src/Carbon/Lang/sw.php 0000644 00000004725 14753612052 0010577 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - leyluj
* - Josh Soref
* - ryanhart2
*/
return [
'year' => 'mwaka :count|miaka :count',
'a_year' => 'mwaka mmoja|miaka :count',
'y' => 'mwaka :count|miaka :count',
'month' => 'mwezi :count|miezi :count',
'a_month' => 'mwezi mmoja|miezi :count',
'm' => 'mwezi :count|miezi :count',
'week' => 'wiki :count',
'a_week' => 'wiki mmoja|wiki :count',
'w' => 'w. :count',
'day' => 'siku :count',
'a_day' => 'siku moja|masiku :count',
'd' => 'si. :count',
'hour' => 'saa :count|masaa :count',
'a_hour' => 'saa limoja|masaa :count',
'h' => 'saa :count|masaa :count',
'minute' => 'dakika :count',
'a_minute' => 'dakika moja|dakika :count',
'min' => 'd. :count',
'second' => 'sekunde :count',
'a_second' => 'hivi punde|sekunde :count',
's' => 'se. :count',
'ago' => 'tokea :time',
'from_now' => ':time baadaye',
'after' => ':time baada',
'before' => ':time kabla',
'diff_now' => 'sasa hivi',
'diff_today' => 'leo',
'diff_today_regexp' => 'leo(?:\\s+saa)?',
'diff_yesterday' => 'jana',
'diff_tomorrow' => 'kesho',
'diff_tomorrow_regexp' => 'kesho(?:\\s+saa)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[leo saa] LT',
'nextDay' => '[kesho saa] LT',
'nextWeek' => '[wiki ijayo] dddd [saat] LT',
'lastDay' => '[jana] LT',
'lastWeek' => '[wiki iliyopita] dddd [saat] LT',
'sameElse' => 'L',
],
'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['Jpl', 'Jtat', 'Jnne', 'Jtan', 'Alh', 'Ijm', 'Jmos'],
'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Al', 'Ij', 'J1'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' na '],
];
src/Carbon/Lang/sw_CD.php 0000644 00000000576 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/sw.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
],
]);
src/Carbon/Lang/sw_KE.php 0000644 00000001735 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kamusi Project Martin Benjamin locales@kamusi.org
*/
return array_replace_recursive(require __DIR__.'/sw.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
'day_of_first_week_of_year' => 1,
'meridiem' => ['asubuhi', 'alasiri'],
]);
src/Carbon/Lang/sw_TZ.php 0000644 00000001773 14753612052 0011214 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kamusi Project Martin Benjamin locales@kamusi.org
*/
return array_replace_recursive(require __DIR__.'/sw.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Januari', 'Februari', 'Machi', 'Aprili', 'Mei', 'Juni', 'Julai', 'Agosti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['Jumapili', 'Jumatatu', 'Jumanne', 'Jumatano', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
'weekdays_min' => ['J2', 'J3', 'J4', 'J5', 'Alh', 'Ij', 'J1'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['asubuhi', 'alasiri'],
]);
src/Carbon/Lang/sw_UG.php 0000644 00000000576 14753612052 0011172 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/sw.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
],
]);
src/Carbon/Lang/szl.php 0000644 00000000517 14753612052 0010751 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/szl_PL.php';
src/Carbon/Lang/szl_PL.php 0000644 00000003255 14753612052 0011346 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - szl_PL locale Przemyslaw Buczkowski libc-alpha@sourceware.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['styczyń', 'luty', 'merc', 'kwjeciyń', 'moj', 'czyrwjyń', 'lipjyń', 'siyrpjyń', 'wrzesiyń', 'październik', 'listopad', 'grudziyń'],
'months_short' => ['sty', 'lut', 'mer', 'kwj', 'moj', 'czy', 'lip', 'siy', 'wrz', 'paź', 'lis', 'gru'],
'weekdays' => ['niydziela', 'pyńdziŏek', 'wtŏrek', 'strzŏda', 'sztwortek', 'pjōntek', 'sobŏta'],
'weekdays_short' => ['niy', 'pyń', 'wtŏ', 'str', 'szt', 'pjō', 'sob'],
'weekdays_min' => ['niy', 'pyń', 'wtŏ', 'str', 'szt', 'pjō', 'sob'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count rok',
'y' => ':count rok',
'a_year' => ':count rok',
'month' => ':count mjeśůnc',
'm' => ':count mjeśůnc',
'a_month' => ':count mjeśůnc',
'week' => ':count tydźyń',
'w' => ':count tydźyń',
'a_week' => ':count tydźyń',
'day' => ':count dźyń',
'd' => ':count dźyń',
'a_day' => ':count dźyń',
'hour' => ':count godzina',
'h' => ':count godzina',
'a_hour' => ':count godzina',
'minute' => ':count minuta',
'min' => ':count minuta',
'a_minute' => ':count minuta',
'second' => ':count sekůnda',
's' => ':count sekůnda',
'a_second' => ':count sekůnda',
]);
src/Carbon/Lang/ta.php 0000644 00000010555 14753612052 0010550 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - François B
* - JD Isaacks
* - Satheez
*/
return [
'year' => ':count வருடம்|:count ஆண்டுகள்',
'a_year' => 'ஒரு வருடம்|:count ஆண்டுகள்',
'y' => ':count வருட.|:count ஆண்.',
'month' => ':count மாதம்|:count மாதங்கள்',
'a_month' => 'ஒரு மாதம்|:count மாதங்கள்',
'm' => ':count மாத.',
'week' => ':count வாரம்|:count வாரங்கள்',
'a_week' => 'ஒரு வாரம்|:count வாரங்கள்',
'w' => ':count வார.',
'day' => ':count நாள்|:count நாட்கள்',
'a_day' => 'ஒரு நாள்|:count நாட்கள்',
'd' => ':count நாள்|:count நாட்.',
'hour' => ':count மணி நேரம்|:count மணி நேரம்',
'a_hour' => 'ஒரு மணி நேரம்|:count மணி நேரம்',
'h' => ':count மணி.',
'minute' => ':count நிமிடம்|:count நிமிடங்கள்',
'a_minute' => 'ஒரு நிமிடம்|:count நிமிடங்கள்',
'min' => ':count நிமி.',
'second' => ':count சில விநாடிகள்|:count விநாடிகள்',
'a_second' => 'ஒரு சில விநாடிகள்|:count விநாடிகள்',
's' => ':count விநா.',
'ago' => ':time முன்',
'from_now' => ':time இல்',
'before' => ':time முன்',
'after' => ':time பின்',
'diff_now' => 'இப்போது',
'diff_today' => 'இன்று',
'diff_yesterday' => 'நேற்று',
'diff_tomorrow' => 'நாளை',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, HH:mm',
'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
],
'calendar' => [
'sameDay' => '[இன்று] LT',
'nextDay' => '[நாளை] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[நேற்று] LT',
'lastWeek' => '[கடந்த வாரம்] dddd, LT',
'sameElse' => 'L',
],
'ordinal' => ':numberவது',
'meridiem' => static function ($hour) {
if ($hour < 2) {
return ' யாமம்';
}
if ($hour < 6) {
return ' வைகறை';
}
if ($hour < 10) {
return ' காலை';
}
if ($hour < 14) {
return ' நண்பகல்';
}
if ($hour < 18) {
return ' எற்பாடு';
}
if ($hour < 22) {
return ' மாலை';
}
return ' யாமம்';
},
'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டெம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
'months_short' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டெம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
'weekdays' => ['ஞாயிற்றுக்கிழமை', 'திங்கட்கிழமை', 'செவ்வாய்கிழமை', 'புதன்கிழமை', 'வியாழக்கிழமை', 'வெள்ளிக்கிழமை', 'சனிக்கிழமை'],
'weekdays_short' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' மற்றும் '],
'weekend' => [0, 0],
];
src/Carbon/Lang/ta_IN.php 0000644 00000002564 14753612052 0011137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/ta.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
'months_short' => ['ஜன.', 'பிப்.', 'மார்.', 'ஏப்.', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக.', 'செப்.', 'அக்.', 'நவ.', 'டிச.'],
'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
'weekdays_short' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
'day_of_first_week_of_year' => 1,
'meridiem' => ['காலை', 'மாலை'],
]);
src/Carbon/Lang/ta_LK.php 0000644 00000002532 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - J.Yogaraj 94-777-315206 yogaraj.ubuntu@gmail.com
*/
return array_replace_recursive(require __DIR__.'/ta.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
'months_short' => ['ஜன', 'பிப்', 'மார்', 'ஏப்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக', 'செப்', 'அக்', 'நவ', 'டிச'],
'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
'weekdays_short' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['காலை', 'மாலை'],
]);
src/Carbon/Lang/ta_MY.php 0000644 00000002715 14753612052 0011154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ta.php', [
'formats' => [
'LT' => 'a h:mm',
'LTS' => 'a h:mm:ss',
'L' => 'D/M/yy',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM, YYYY, a h:mm',
'LLLL' => 'dddd, D MMMM, YYYY, a h:mm',
],
'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
'months_short' => ['ஜன.', 'பிப்.', 'மார்.', 'ஏப்.', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக.', 'செப்.', 'அக்.', 'நவ.', 'டிச.'],
'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
'weekdays_short' => ['ஞாயி.', 'திங்.', 'செவ்.', 'புத.', 'வியா.', 'வெள்.', 'சனி'],
'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
'first_day_of_week' => 1,
'meridiem' => ['மு.ப', 'பி.ப'],
]);
src/Carbon/Lang/ta_SG.php 0000644 00000002657 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ta.php', [
'formats' => [
'LT' => 'a h:mm',
'LTS' => 'a h:mm:ss',
'L' => 'D/M/yy',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM, YYYY, a h:mm',
'LLLL' => 'dddd, D MMMM, YYYY, a h:mm',
],
'months' => ['ஜனவரி', 'பிப்ரவரி', 'மார்ச்', 'ஏப்ரல்', 'மே', 'ஜூன்', 'ஜூலை', 'ஆகஸ்ட்', 'செப்டம்பர்', 'அக்டோபர்', 'நவம்பர்', 'டிசம்பர்'],
'months_short' => ['ஜன.', 'பிப்.', 'மார்.', 'ஏப்.', 'மே', 'ஜூன்', 'ஜூலை', 'ஆக.', 'செப்.', 'அக்.', 'நவ.', 'டிச.'],
'weekdays' => ['ஞாயிறு', 'திங்கள்', 'செவ்வாய்', 'புதன்', 'வியாழன்', 'வெள்ளி', 'சனி'],
'weekdays_short' => ['ஞாயி.', 'திங்.', 'செவ்.', 'புத.', 'வியா.', 'வெள்.', 'சனி'],
'weekdays_min' => ['ஞா', 'தி', 'செ', 'பு', 'வி', 'வெ', 'ச'],
'meridiem' => ['மு.ப', 'பி.ப'],
]);
src/Carbon/Lang/tcy.php 0000644 00000000517 14753612052 0010740 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/tcy_IN.php';
src/Carbon/Lang/tcy_IN.php 0000644 00000003470 14753612052 0011327 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IndLinux.org, Samsung Electronics Co., Ltd. alexey.merzlyakov@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['ಜನವರಿ', 'ಫೆಬ್ರುವರಿ', 'ಮಾರ್ಚ್', 'ಏಪ್ರಿಲ್', 'ಮೇ', 'ಜೂನ್', 'ಜುಲೈ', 'ಆಗಸ್ಟ್', 'ಸೆಪ್ಟೆಂಬರ್', 'ಅಕ್ಟೋಬರ್', 'ನವೆಂಬರ್', 'ಡಿಸೆಂಬರ್'],
'months_short' => ['ಜ', 'ಫೆ', 'ಮಾ', 'ಏ', 'ಮೇ', 'ಜೂ', 'ಜು', 'ಆ', 'ಸೆ', 'ಅ', 'ನ', 'ಡಿ'],
'weekdays' => ['ಐಥಾರ', 'ಸೋಮಾರ', 'ಅಂಗರೆ', 'ಬುಧಾರ', 'ಗುರುವಾರ', 'ಶುಕ್ರರ', 'ಶನಿವಾರ'],
'weekdays_short' => ['ಐ', 'ಸೋ', 'ಅಂ', 'ಬು', 'ಗು', 'ಶು', 'ಶ'],
'weekdays_min' => ['ಐ', 'ಸೋ', 'ಅಂ', 'ಬು', 'ಗು', 'ಶು', 'ಶ'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ಕಾಂಡೆ', 'ಬಯ್ಯ'],
'year' => ':count ನೀರ್', // less reliable
'y' => ':count ನೀರ್', // less reliable
'a_year' => ':count ನೀರ್', // less reliable
'month' => ':count ಮೀನ್', // less reliable
'm' => ':count ಮೀನ್', // less reliable
'a_month' => ':count ಮೀನ್', // less reliable
'day' => ':count ಸುಗ್ಗಿ', // less reliable
'd' => ':count ಸುಗ್ಗಿ', // less reliable
'a_day' => ':count ಸುಗ್ಗಿ', // less reliable
]);
src/Carbon/Lang/te.php 0000644 00000007334 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kunal Marwaha
* - Josh Soref
* - François B
* - kc
*/
return [
'year' => ':count సంవత్సరం|:count సంవత్సరాలు',
'a_year' => 'ఒక సంవత్సరం|:count సంవత్సరాలు',
'y' => ':count సం.',
'month' => ':count నెల|:count నెలలు',
'a_month' => 'ఒక నెల|:count నెలలు',
'm' => ':count నెల|:count నెల.',
'week' => ':count వారం|:count వారాలు',
'a_week' => 'ఒక వారం|:count వారాలు',
'w' => ':count వార.|:count వారా.',
'day' => ':count రోజు|:count రోజులు',
'a_day' => 'ఒక రోజు|:count రోజులు',
'd' => ':count రోజు|:count రోజు.',
'hour' => ':count గంట|:count గంటలు',
'a_hour' => 'ఒక గంట|:count గంటలు',
'h' => ':count గం.',
'minute' => ':count నిమిషం|:count నిమిషాలు',
'a_minute' => 'ఒక నిమిషం|:count నిమిషాలు',
'min' => ':count నిమి.',
'second' => ':count సెకను|:count సెకన్లు',
'a_second' => 'కొన్ని క్షణాలు|:count సెకన్లు',
's' => ':count సెక.',
'ago' => ':time క్రితం',
'from_now' => ':time లో',
'diff_now' => 'ప్రస్తుతం',
'diff_today' => 'నేడు',
'diff_yesterday' => 'నిన్న',
'diff_tomorrow' => 'రేపు',
'formats' => [
'LT' => 'A h:mm',
'LTS' => 'A h:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, A h:mm',
'LLLL' => 'dddd, D MMMM YYYY, A h:mm',
],
'calendar' => [
'sameDay' => '[నేడు] LT',
'nextDay' => '[రేపు] LT',
'nextWeek' => 'dddd, LT',
'lastDay' => '[నిన్న] LT',
'lastWeek' => '[గత] dddd, LT',
'sameElse' => 'L',
],
'ordinal' => ':numberవ',
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'రాత్రి';
}
if ($hour < 10) {
return 'ఉదయం';
}
if ($hour < 17) {
return 'మధ్యాహ్నం';
}
if ($hour < 20) {
return 'సాయంత్రం';
}
return ' రాత్రి';
},
'months' => ['జనవరి', 'ఫిబ్రవరి', 'మార్చి', 'ఏప్రిల్', 'మే', 'జూన్', 'జూలై', 'ఆగస్టు', 'సెప్టెంబర్', 'అక్టోబర్', 'నవంబర్', 'డిసెంబర్'],
'months_short' => ['జన.', 'ఫిబ్ర.', 'మార్చి', 'ఏప్రి.', 'మే', 'జూన్', 'జూలై', 'ఆగ.', 'సెప్.', 'అక్టో.', 'నవ.', 'డిసె.'],
'weekdays' => ['ఆదివారం', 'సోమవారం', 'మంగళవారం', 'బుధవారం', 'గురువారం', 'శుక్రవారం', 'శనివారం'],
'weekdays_short' => ['ఆది', 'సోమ', 'మంగళ', 'బుధ', 'గురు', 'శుక్ర', 'శని'],
'weekdays_min' => ['ఆ', 'సో', 'మం', 'బు', 'గు', 'శు', 'శ'],
'list' => ', ',
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'weekend' => [0, 0],
];
src/Carbon/Lang/te_IN.php 0000644 00000000413 14753612052 0011132 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/te.php';
src/Carbon/Lang/teo.php 0000644 00000002134 14753612052 0010725 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ta.php', [
'meridiem' => ['Taparachu', 'Ebongi'],
'weekdays' => ['Nakaejuma', 'Nakaebarasa', 'Nakaare', 'Nakauni', 'Nakaung’on', 'Nakakany', 'Nakasabiti'],
'weekdays_short' => ['Jum', 'Bar', 'Aar', 'Uni', 'Ung', 'Kan', 'Sab'],
'weekdays_min' => ['Jum', 'Bar', 'Aar', 'Uni', 'Ung', 'Kan', 'Sab'],
'months' => ['Orara', 'Omuk', 'Okwamg’', 'Odung’el', 'Omaruk', 'Omodok’king’ol', 'Ojola', 'Opedel', 'Osokosokoma', 'Otibar', 'Olabor', 'Opoo'],
'months_short' => ['Rar', 'Muk', 'Kwa', 'Dun', 'Mar', 'Mod', 'Jol', 'Ped', 'Sok', 'Tib', 'Lab', 'Poo'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/teo_KE.php 0000644 00000000510 14753612052 0011300 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/teo.php', [
'first_day_of_week' => 0,
]);
src/Carbon/Lang/tet.php 0000644 00000004256 14753612052 0010741 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Joshua Brooks
* - François B
*/
return [
'year' => 'tinan :count',
'a_year' => '{1}tinan ida|tinan :count',
'month' => 'fulan :count',
'a_month' => '{1}fulan ida|fulan :count',
'week' => 'semana :count',
'a_week' => '{1}semana ida|semana :count',
'day' => 'loron :count',
'a_day' => '{1}loron ida|loron :count',
'hour' => 'oras :count',
'a_hour' => '{1}oras ida|oras :count',
'minute' => 'minutu :count',
'a_minute' => '{1}minutu ida|minutu :count',
'second' => 'segundu :count',
'a_second' => '{1}segundu balun|segundu :count',
'ago' => ':time liuba',
'from_now' => 'iha :time',
'diff_yesterday' => 'Horiseik',
'diff_yesterday_regexp' => 'Horiseik(?:\\s+iha)?',
'diff_today' => 'Ohin',
'diff_today_regexp' => 'Ohin(?:\\s+iha)?',
'diff_tomorrow' => 'Aban',
'diff_tomorrow_regexp' => 'Aban(?:\\s+iha)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Ohin iha] LT',
'nextDay' => '[Aban iha] LT',
'nextWeek' => 'dddd [iha] LT',
'lastDay' => '[Horiseik iha] LT',
'lastWeek' => 'dddd [semana kotuk] [iha] LT',
'sameElse' => 'L',
],
'ordinal' => ':numberº',
'months' => ['Janeiru', 'Fevereiru', 'Marsu', 'Abril', 'Maiu', 'Juñu', 'Jullu', 'Agustu', 'Setembru', 'Outubru', 'Novembru', 'Dezembru'],
'months_short' => ['Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez'],
'weekdays' => ['Domingu', 'Segunda', 'Tersa', 'Kuarta', 'Kinta', 'Sesta', 'Sabadu'],
'weekdays_short' => ['Dom', 'Seg', 'Ters', 'Kua', 'Kint', 'Sest', 'Sab'],
'weekdays_min' => ['Do', 'Seg', 'Te', 'Ku', 'Ki', 'Ses', 'Sa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
];
src/Carbon/Lang/tg.php 0000644 00000006773 14753612052 0010565 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Orif N. Jr
*/
return [
'year' => '{1}як сол|:count сол',
'month' => '{1}як моҳ|:count моҳ',
'week' => '{1}як ҳафта|:count ҳафта',
'day' => '{1}як рӯз|:count рӯз',
'hour' => '{1}як соат|:count соат',
'minute' => '{1}як дақиқа|:count дақиқа',
'second' => '{1}якчанд сония|:count сония',
'ago' => ':time пеш',
'from_now' => 'баъди :time',
'diff_today' => 'Имрӯз',
'diff_yesterday' => 'Дирӯз',
'diff_yesterday_regexp' => 'Дирӯз(?:\\s+соати)?',
'diff_tomorrow' => 'Пагоҳ',
'diff_tomorrow_regexp' => 'Пагоҳ(?:\\s+соати)?',
'diff_today_regexp' => 'Имрӯз(?:\\s+соати)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Имрӯз соати] LT',
'nextDay' => '[Пагоҳ соати] LT',
'nextWeek' => 'dddd[и] [ҳафтаи оянда соати] LT',
'lastDay' => '[Дирӯз соати] LT',
'lastWeek' => 'dddd[и] [ҳафтаи гузашта соати] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number) {
if ($number === 0) { // special case for zero
return "$number-ıncı";
}
static $suffixes = [
0 => '-ум',
1 => '-ум',
2 => '-юм',
3 => '-юм',
4 => '-ум',
5 => '-ум',
6 => '-ум',
7 => '-ум',
8 => '-ум',
9 => '-ум',
10 => '-ум',
12 => '-ум',
13 => '-ум',
20 => '-ум',
30 => '-юм',
40 => '-ум',
50 => '-ум',
60 => '-ум',
70 => '-ум',
80 => '-ум',
90 => '-ум',
100 => '-ум',
];
return $number.($suffixes[$number] ?? $suffixes[$number % 10] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
},
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'шаб';
}
if ($hour < 11) {
return 'субҳ';
}
if ($hour < 16) {
return 'рӯз';
}
if ($hour < 19) {
return 'бегоҳ';
}
return 'шаб';
},
'months' => ['январ', 'феврал', 'март', 'апрел', 'май', 'июн', 'июл', 'август', 'сентябр', 'октябр', 'ноябр', 'декабр'],
'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
'weekdays' => ['якшанбе', 'душанбе', 'сешанбе', 'чоршанбе', 'панҷшанбе', 'ҷумъа', 'шанбе'],
'weekdays_short' => ['яшб', 'дшб', 'сшб', 'чшб', 'пшб', 'ҷум', 'шнб'],
'weekdays_min' => ['яш', 'дш', 'сш', 'чш', 'пш', 'ҷм', 'шб'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' ва '],
];
src/Carbon/Lang/tg_TJ.php 0000644 00000000413 14753612052 0011143 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/tg.php';
src/Carbon/Lang/th.php 0000644 00000006430 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Nate Whittaker
* - John MacAslan
* - Chanintorn Asavavichairoj
* - JD Isaacks
* - ROKAISAKKON
* - RO'KAISAKKON
* - Andreas Möller
* - nithisa
*/
return [
'year' => ':count ปี',
'y' => ':count ปี',
'month' => ':count เดือน',
'm' => ':count เดือน',
'week' => ':count สัปดาห์',
'w' => ':count สัปดาห์',
'day' => ':count วัน',
'd' => ':count วัน',
'hour' => ':count ชั่วโมง',
'h' => ':count ชั่วโมง',
'minute' => ':count นาที',
'min' => ':count นาที',
'second' => ':count วินาที',
'a_second' => '{1}ไม่กี่วินาที|]1,Inf[:count วินาที',
's' => ':count วินาที',
'ago' => ':timeที่แล้ว',
'from_now' => 'อีก :time',
'after' => ':timeหลังจากนี้',
'before' => ':timeก่อน',
'diff_now' => 'ขณะนี้',
'diff_today' => 'วันนี้',
'diff_today_regexp' => 'วันนี้(?:\\s+เวลา)?',
'diff_yesterday' => 'เมื่อวาน',
'diff_yesterday_regexp' => 'เมื่อวานนี้(?:\\s+เวลา)?',
'diff_tomorrow' => 'พรุ่งนี้',
'diff_tomorrow_regexp' => 'พรุ่งนี้(?:\\s+เวลา)?',
'formats' => [
'LT' => 'H:mm',
'LTS' => 'H:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY เวลา H:mm',
'LLLL' => 'วันddddที่ D MMMM YYYY เวลา H:mm',
],
'calendar' => [
'sameDay' => '[วันนี้ เวลา] LT',
'nextDay' => '[พรุ่งนี้ เวลา] LT',
'nextWeek' => 'dddd[หน้า เวลา] LT',
'lastDay' => '[เมื่อวานนี้ เวลา] LT',
'lastWeek' => '[วัน]dddd[ที่แล้ว เวลา] LT',
'sameElse' => 'L',
],
'meridiem' => ['ก่อนเที่ยง', 'หลังเที่ยง'],
'months' => ['มกราคม', 'กุมภาพันธ์', 'มีนาคม', 'เมษายน', 'พฤษภาคม', 'มิถุนายน', 'กรกฎาคม', 'สิงหาคม', 'กันยายน', 'ตุลาคม', 'พฤศจิกายน', 'ธันวาคม'],
'months_short' => ['ม.ค.', 'ก.พ.', 'มี.ค.', 'เม.ย.', 'พ.ค.', 'มิ.ย.', 'ก.ค.', 'ส.ค.', 'ก.ย.', 'ต.ค.', 'พ.ย.', 'ธ.ค.'],
'weekdays' => ['อาทิตย์', 'จันทร์', 'อังคาร', 'พุธ', 'พฤหัสบดี', 'ศุกร์', 'เสาร์'],
'weekdays_short' => ['อาทิตย์', 'จันทร์', 'อังคาร', 'พุธ', 'พฤหัส', 'ศุกร์', 'เสาร์'],
'weekdays_min' => ['อา.', 'จ.', 'อ.', 'พ.', 'พฤ.', 'ศ.', 'ส.'],
'list' => [', ', ' และ '],
];
src/Carbon/Lang/th_TH.php 0000644 00000000413 14753612052 0011142 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/th.php';
src/Carbon/Lang/the.php 0000644 00000000517 14753612052 0010721 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/the_NP.php';
src/Carbon/Lang/the_NP.php 0000644 00000003001 14753612052 0011305 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Chitwanix OS Development info@chitwanix.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'dddd DD MMM YYYY',
],
'months' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'months_short' => ['जनवरी', 'फ़रवरी', 'मार्च', 'अप्रेल', 'मई', 'जून', 'जुलाई', 'अगस्त', 'सितम्बर', 'अक्टूबर', 'नवम्बर', 'दिसम्बर'],
'weekdays' => ['आइतबार', 'सोमबार', 'मंगलबार', 'बुधबार', 'बिहिबार', 'शुक्रबार', 'शनिबार'],
'weekdays_short' => ['आइत', 'सोम', 'मंगल', 'बुध', 'बिहि', 'शुक्र', 'शनि'],
'weekdays_min' => ['आइत', 'सोम', 'मंगल', 'बुध', 'बिहि', 'शुक्र', 'शनि'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['पूर्वाह्न', 'अपराह्न'],
]);
src/Carbon/Lang/ti.php 0000644 00000000516 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ti_ER.php';
src/Carbon/Lang/ti_ER.php 0000644 00000003734 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ጥሪ', 'ለካቲት', 'መጋቢት', 'ሚያዝያ', 'ግንቦት', 'ሰነ', 'ሓምለ', 'ነሓሰ', 'መስከረም', 'ጥቅምቲ', 'ሕዳር', 'ታሕሳስ'],
'months_short' => ['ጥሪ ', 'ለካቲ', 'መጋቢ', 'ሚያዝ', 'ግንቦ', 'ሰነ ', 'ሓምለ', 'ነሓሰ', 'መስከ', 'ጥቅም', 'ሕዳር', 'ታሕሳ'],
'weekdays' => ['ሰንበት', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
'weekdays_short' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
'weekdays_min' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ንጉሆ ሰዓተ', 'ድሕር ሰዓት'],
'year' => ':count ዓመት',
'y' => ':count ዓመት',
'a_year' => ':count ዓመት',
'month' => 'ወርሒ :count',
'm' => 'ወርሒ :count',
'a_month' => 'ወርሒ :count',
'week' => ':count ሰሙን',
'w' => ':count ሰሙን',
'a_week' => ':count ሰሙን',
'day' => ':count መዓልቲ',
'd' => ':count መዓልቲ',
'a_day' => ':count መዓልቲ',
'hour' => ':count ሰዓት',
'h' => ':count ሰዓት',
'a_hour' => ':count ሰዓት',
'minute' => ':count ደቒቕ',
'min' => ':count ደቒቕ',
'a_minute' => ':count ደቒቕ',
'second' => ':count ሰከንድ',
's' => ':count ሰከንድ',
'a_second' => ':count ሰከንድ',
]);
src/Carbon/Lang/ti_ET.php 0000644 00000002416 14753612052 0011145 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕረል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክተውበር', 'ኖቬምበር', 'ዲሴምበር'],
'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
'weekdays' => ['ሰንበት', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
'weekdays_short' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
'weekdays_min' => ['ሰንበ', 'ሰኑይ', 'ሰሉስ', 'ረቡዕ', 'ሓሙስ', 'ዓርቢ', 'ቀዳም'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ንጉሆ ሰዓተ', 'ድሕር ሰዓት'],
]);
src/Carbon/Lang/tig.php 0000644 00000000517 14753612052 0010724 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/tig_ER.php';
src/Carbon/Lang/tig_ER.php 0000644 00000004450 14753612052 0011312 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ጥሪ', 'ለካቲት', 'መጋቢት', 'ሚያዝያ', 'ግንቦት', 'ሰነ', 'ሓምለ', 'ነሓሰ', 'መስከረም', 'ጥቅምቲ', 'ሕዳር', 'ታሕሳስ'],
'months_short' => ['ጥሪ ', 'ለካቲ', 'መጋቢ', 'ሚያዝ', 'ግንቦ', 'ሰነ ', 'ሓምለ', 'ነሓሰ', 'መስከ', 'ጥቅም', 'ሕዳር', 'ታሕሳ'],
'weekdays' => ['ሰንበት ዓባይ', 'ሰኖ', 'ታላሸኖ', 'ኣረርባዓ', 'ከሚሽ', 'ጅምዓት', 'ሰንበት ንኢሽ'],
'weekdays_short' => ['ሰ//ዓ', 'ሰኖ ', 'ታላሸ', 'ኣረር', 'ከሚሽ', 'ጅምዓ', 'ሰ//ን'],
'weekdays_min' => ['ሰ//ዓ', 'ሰኖ ', 'ታላሸ', 'ኣረር', 'ከሚሽ', 'ጅምዓ', 'ሰ//ን'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ቀደም ሰር ምዕል', 'ሓቆ ሰር ምዕል'],
'year' => ':count ማይ', // less reliable
'y' => ':count ማይ', // less reliable
'a_year' => ':count ማይ', // less reliable
'month' => ':count ሸምሽ', // less reliable
'm' => ':count ሸምሽ', // less reliable
'a_month' => ':count ሸምሽ', // less reliable
'week' => ':count ሰቡዕ', // less reliable
'w' => ':count ሰቡዕ', // less reliable
'a_week' => ':count ሰቡዕ', // less reliable
'day' => ':count ዎሮ', // less reliable
'd' => ':count ዎሮ', // less reliable
'a_day' => ':count ዎሮ', // less reliable
'hour' => ':count ሰዓት', // less reliable
'h' => ':count ሰዓት', // less reliable
'a_hour' => ':count ሰዓት', // less reliable
'minute' => ':count ካልኣይት', // less reliable
'min' => ':count ካልኣይት', // less reliable
'a_minute' => ':count ካልኣይት', // less reliable
'second' => ':count ካልኣይ',
's' => ':count ካልኣይ',
'a_second' => ':count ካልኣይ',
]);
src/Carbon/Lang/tk.php 0000644 00000000516 14753612052 0010556 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/tk_TM.php';
src/Carbon/Lang/tk_TM.php 0000644 00000004130 14753612052 0011152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/**
* Authors:
* - Ghorban M. Tavakoly Pablo Saratxaga & Ghorban M. Tavakoly pablo@walon.org & gmt314@yahoo.com
* - SuperManPHP
* - Maksat Meredow (isadma)
*/
$transformDiff = static fn (string $input) => strtr($input, [
'sekunt' => 'sekunt',
'hepde' => 'hepde',
]);
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Ýanwar', 'Fewral', 'Mart', 'Aprel', 'Maý', 'Iýun', 'Iýul', 'Awgust', 'Sentýabr', 'Oktýabr', 'Noýabr', 'Dekabr'],
'months_short' => ['Ýan', 'Few', 'Mar', 'Apr', 'Maý', 'Iýn', 'Iýl', 'Awg', 'Sen', 'Okt', 'Noý', 'Dek'],
'weekdays' => ['Duşenbe', 'Sişenbe', 'Çarşenbe', 'Penşenbe', 'Anna', 'Şenbe', 'Ýekşenbe'],
'weekdays_short' => ['Duş', 'Siş', 'Çar', 'Pen', 'Ann', 'Şen', 'Ýek'],
'weekdays_min' => ['Du', 'Si', 'Ça', 'Pe', 'An', 'Şe', 'Ýe'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count ýyl',
'y' => ':count ýyl',
'a_year' => ':count ýyl',
'month' => ':count aý',
'm' => ':count aý',
'a_month' => ':count aý',
'week' => ':count hepde',
'w' => ':count hepde',
'a_week' => ':count hepde',
'day' => ':count gün',
'd' => ':count gün',
'a_day' => ':count gün',
'hour' => ':count sagat',
'h' => ':count sagat',
'a_hour' => ':count sagat',
'minute' => ':count minut',
'min' => ':count minut',
'a_minute' => ':count minut',
'second' => ':count sekunt',
's' => ':count sekunt',
'a_second' => ':count sekunt',
'ago' => static fn (string $time) => $transformDiff($time).' ozal',
'from_now' => static fn (string $time) => $transformDiff($time).' soňra',
'after' => static fn (string $time) => $transformDiff($time).' soň',
'before' => static fn (string $time) => $transformDiff($time).' öň',
]);
src/Carbon/Lang/tl.php 0000644 00000004271 14753612052 0010561 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return [
'year' => ':count taon',
'a_year' => '{1}isang taon|:count taon',
'month' => ':count buwan',
'a_month' => '{1}isang buwan|:count buwan',
'week' => ':count linggo',
'a_week' => '{1}isang linggo|:count linggo',
'day' => ':count araw',
'a_day' => '{1}isang araw|:count araw',
'hour' => ':count oras',
'a_hour' => '{1}isang oras|:count oras',
'minute' => ':count minuto',
'a_minute' => '{1}isang minuto|:count minuto',
'min' => ':count min.',
'second' => ':count segundo',
'a_second' => '{1}ilang segundo|:count segundo',
's' => ':count seg.',
'ago' => ':time ang nakalipas',
'from_now' => 'sa loob ng :time',
'diff_now' => 'ngayon',
'diff_today' => 'ngayong',
'diff_today_regexp' => 'ngayong(?:\\s+araw)?',
'diff_yesterday' => 'kahapon',
'diff_tomorrow' => 'bukas',
'diff_tomorrow_regexp' => 'Bukas(?:\\s+ng)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'MM/D/YYYY',
'LL' => 'MMMM D, YYYY',
'LLL' => 'MMMM D, YYYY HH:mm',
'LLLL' => 'dddd, MMMM DD, YYYY HH:mm',
],
'calendar' => [
'sameDay' => 'LT [ngayong araw]',
'nextDay' => '[Bukas ng] LT',
'nextWeek' => 'LT [sa susunod na] dddd',
'lastDay' => 'LT [kahapon]',
'lastWeek' => 'LT [noong nakaraang] dddd',
'sameElse' => 'L',
],
'months' => ['Enero', 'Pebrero', 'Marso', 'Abril', 'Mayo', 'Hunyo', 'Hulyo', 'Agosto', 'Setyembre', 'Oktubre', 'Nobyembre', 'Disyembre'],
'months_short' => ['Ene', 'Peb', 'Mar', 'Abr', 'May', 'Hun', 'Hul', 'Ago', 'Set', 'Okt', 'Nob', 'Dis'],
'weekdays' => ['Linggo', 'Lunes', 'Martes', 'Miyerkules', 'Huwebes', 'Biyernes', 'Sabado'],
'weekdays_short' => ['Lin', 'Lun', 'Mar', 'Miy', 'Huw', 'Biy', 'Sab'],
'weekdays_min' => ['Li', 'Lu', 'Ma', 'Mi', 'Hu', 'Bi', 'Sab'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' at '],
];
src/Carbon/Lang/tl_PH.php 0000644 00000000523 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Ian De La Cruz
* - JD Isaacks
*/
return require __DIR__.'/tl.php';
src/Carbon/Lang/tlh.php 0000644 00000004762 14753612052 0010736 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Serhan Apaydın
* - Dominika
*/
return [
'year' => '{1}wa’ DIS|:count DIS',
'month' => '{1}wa’ jar|:count jar',
'week' => '{1}wa’ hogh|:count hogh',
'day' => '{1}wa’ jaj|:count jaj',
'hour' => '{1}wa’ rep|:count rep',
'minute' => '{1}wa’ tup|:count tup',
'second' => '{1}puS lup|:count lup',
'ago' => static function ($time) {
$output = strtr($time, [
'jaj' => 'Hu’',
'jar' => 'wen',
'DIS' => 'ben',
]);
return $output === $time ? "$time ret" : $output;
},
'from_now' => static function ($time) {
$output = strtr($time, [
'jaj' => 'leS',
'jar' => 'waQ',
'DIS' => 'nem',
]);
return $output === $time ? "$time pIq" : $output;
},
'diff_yesterday' => 'wa’Hu’',
'diff_today' => 'DaHjaj',
'diff_tomorrow' => 'wa’leS',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[DaHjaj] LT',
'nextDay' => '[wa’leS] LT',
'nextWeek' => 'LLL',
'lastDay' => '[wa’Hu’] LT',
'lastWeek' => 'LLL',
'sameElse' => 'L',
],
'ordinal' => ':number.',
'months' => ['tera’ jar wa’', 'tera’ jar cha’', 'tera’ jar wej', 'tera’ jar loS', 'tera’ jar vagh', 'tera’ jar jav', 'tera’ jar Soch', 'tera’ jar chorgh', 'tera’ jar Hut', 'tera’ jar wa’maH', 'tera’ jar wa’maH wa’', 'tera’ jar wa’maH cha’'],
'months_short' => ['jar wa’', 'jar cha’', 'jar wej', 'jar loS', 'jar vagh', 'jar jav', 'jar Soch', 'jar chorgh', 'jar Hut', 'jar wa’maH', 'jar wa’maH wa’', 'jar wa’maH cha’'],
'weekdays' => ['lojmItjaj', 'DaSjaj', 'povjaj', 'ghItlhjaj', 'loghjaj', 'buqjaj', 'ghInjaj'],
'weekdays_short' => ['lojmItjaj', 'DaSjaj', 'povjaj', 'ghItlhjaj', 'loghjaj', 'buqjaj', 'ghInjaj'],
'weekdays_min' => ['lojmItjaj', 'DaSjaj', 'povjaj', 'ghItlhjaj', 'loghjaj', 'buqjaj', 'ghInjaj'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' ’ej '],
];
src/Carbon/Lang/tn.php 0000644 00000000516 14753612052 0010561 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/tn_ZA.php';
src/Carbon/Lang/tn_ZA.php 0000644 00000003501 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Ferikgong', 'Tlhakole', 'Mopitlwe', 'Moranang', 'Motsheganong', 'Seetebosigo', 'Phukwi', 'Phatwe', 'Lwetse', 'Diphalane', 'Ngwanatsele', 'Sedimonthole'],
'months_short' => ['Fer', 'Tlh', 'Mop', 'Mor', 'Mot', 'See', 'Phu', 'Pha', 'Lwe', 'Dip', 'Ngw', 'Sed'],
'weekdays' => ['laTshipi', 'Mosupologo', 'Labobedi', 'Laboraro', 'Labone', 'Labotlhano', 'Lamatlhatso'],
'weekdays_short' => ['Tsh', 'Mos', 'Bed', 'Rar', 'Ne', 'Tlh', 'Mat'],
'weekdays_min' => ['Tsh', 'Mos', 'Bed', 'Rar', 'Ne', 'Tlh', 'Mat'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => 'dingwaga di le :count',
'y' => 'dingwaga di le :count',
'a_year' => 'dingwaga di le :count',
'month' => 'dikgwedi di le :count',
'm' => 'dikgwedi di le :count',
'a_month' => 'dikgwedi di le :count',
'week' => 'dibeke di le :count',
'w' => 'dibeke di le :count',
'a_week' => 'dibeke di le :count',
'day' => 'malatsi :count',
'd' => 'malatsi :count',
'a_day' => 'malatsi :count',
'hour' => 'diura di le :count',
'h' => 'diura di le :count',
'a_hour' => 'diura di le :count',
'minute' => 'metsotso e le :count',
'min' => 'metsotso e le :count',
'a_minute' => 'metsotso e le :count',
'second' => 'metsotswana e le :count',
's' => 'metsotswana e le :count',
'a_second' => 'metsotswana e le :count',
]);
src/Carbon/Lang/to.php 0000644 00000000516 14753612052 0010562 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/to_TO.php';
src/Carbon/Lang/to_TO.php 0000644 00000003556 14753612052 0011173 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - International Components for Unicode akhilesh.k@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'first_day_of_week' => 0,
'formats' => [
'L' => 'dddd DD MMM YYYY',
],
'months' => ['Sānuali', 'Fēpueli', 'Maʻasi', 'ʻEpeleli', 'Mē', 'Sune', 'Siulai', 'ʻAokosi', 'Sepitema', 'ʻOkatopa', 'Nōvema', 'Tīsema'],
'months_short' => ['Sān', 'Fēp', 'Maʻa', 'ʻEpe', 'Mē', 'Sun', 'Siu', 'ʻAok', 'Sep', 'ʻOka', 'Nōv', 'Tīs'],
'weekdays' => ['Sāpate', 'Mōnite', 'Tūsite', 'Pulelulu', 'Tuʻapulelulu', 'Falaite', 'Tokonaki'],
'weekdays_short' => ['Sāp', 'Mōn', 'Tūs', 'Pul', 'Tuʻa', 'Fal', 'Tok'],
'weekdays_min' => ['Sāp', 'Mōn', 'Tūs', 'Pul', 'Tuʻa', 'Fal', 'Tok'],
'meridiem' => ['hengihengi', 'efiafi'],
'year' => ':count fitu', // less reliable
'y' => ':count fitu', // less reliable
'a_year' => ':count fitu', // less reliable
'month' => ':count mahina', // less reliable
'm' => ':count mahina', // less reliable
'a_month' => ':count mahina', // less reliable
'week' => ':count Sapate', // less reliable
'w' => ':count Sapate', // less reliable
'a_week' => ':count Sapate', // less reliable
'day' => ':count ʻaho', // less reliable
'd' => ':count ʻaho', // less reliable
'a_day' => ':count ʻaho', // less reliable
'hour' => ':count houa',
'h' => ':count houa',
'a_hour' => ':count houa',
'minute' => ':count miniti',
'min' => ':count miniti',
'a_minute' => ':count miniti',
'second' => ':count sekoni',
's' => ':count sekoni',
'a_second' => ':count sekoni',
]);
src/Carbon/Lang/tpi.php 0000644 00000000517 14753612052 0010735 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/tpi_PG.php';
src/Carbon/Lang/tpi_PG.php 0000644 00000003135 14753612052 0011322 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Samsung Electronics Co., Ltd. akhilesh.k@samsung.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Janueri', 'Februeri', 'Mas', 'Epril', 'Me', 'Jun', 'Julai', 'Ogas', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mas', 'Epr', 'Me', 'Jun', 'Jul', 'Oga', 'Sep', 'Okt', 'Nov', 'Des'],
'weekdays' => ['Sande', 'Mande', 'Tunde', 'Trinde', 'Fonde', 'Fraide', 'Sarere'],
'weekdays_short' => ['San', 'Man', 'Tun', 'Tri', 'Fon', 'Fra', 'Sar'],
'weekdays_min' => ['San', 'Man', 'Tun', 'Tri', 'Fon', 'Fra', 'Sar'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['biknait', 'apinun'],
'year' => 'yia :count',
'y' => 'yia :count',
'a_year' => 'yia :count',
'month' => ':count mun',
'm' => ':count mun',
'a_month' => ':count mun',
'week' => ':count wik',
'w' => ':count wik',
'a_week' => ':count wik',
'day' => ':count de',
'd' => ':count de',
'a_day' => ':count de',
'hour' => ':count aua',
'h' => ':count aua',
'a_hour' => ':count aua',
'minute' => ':count minit',
'min' => ':count minit',
'a_minute' => ':count minit',
'second' => ':count namba tu',
's' => ':count namba tu',
'a_second' => ':count namba tu',
]);
src/Carbon/Lang/tr.php 0000644 00000007623 14753612052 0010573 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - Alan Agius
* - Erhan Gundogan
* - François B
* - JD Isaacks
* - Murat Yüksel
* - Baran Şengül
* - Selami (selamialtin)
* - TeomanBey
*/
return [
'year' => ':count yıl',
'a_year' => '{1}bir yıl|]1,Inf[:count yıl',
'y' => ':county',
'month' => ':count ay',
'a_month' => '{1}bir ay|]1,Inf[:count ay',
'm' => ':countay',
'week' => ':count hafta',
'a_week' => '{1}bir hafta|]1,Inf[:count hafta',
'w' => ':counth',
'day' => ':count gün',
'a_day' => '{1}bir gün|]1,Inf[:count gün',
'd' => ':countg',
'hour' => ':count saat',
'a_hour' => '{1}bir saat|]1,Inf[:count saat',
'h' => ':countsa',
'minute' => ':count dakika',
'a_minute' => '{1}bir dakika|]1,Inf[:count dakika',
'min' => ':countdk',
'second' => ':count saniye',
'a_second' => '{1}birkaç saniye|]1,Inf[:count saniye',
's' => ':countsn',
'ago' => ':time önce',
'from_now' => ':time sonra',
'after' => ':time sonra',
'before' => ':time önce',
'diff_now' => 'şimdi',
'diff_today' => 'bugün',
'diff_today_regexp' => 'bugün(?:\\s+saat)?',
'diff_yesterday' => 'dün',
'diff_tomorrow' => 'yarın',
'diff_tomorrow_regexp' => 'yarın(?:\\s+saat)?',
'diff_before_yesterday' => 'evvelsi gün',
'diff_after_tomorrow' => 'öbür gün',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[bugün saat] LT',
'nextDay' => '[yarın saat] LT',
'nextWeek' => '[gelecek] dddd [saat] LT',
'lastDay' => '[dün] LT',
'lastWeek' => '[geçen] dddd [saat] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
switch ($period) {
case 'd':
case 'D':
case 'Do':
case 'DD':
return $number;
default:
if ($number === 0) { // special case for zero
return "$number'ıncı";
}
static $suffixes = [
1 => '\'inci',
5 => '\'inci',
8 => '\'inci',
70 => '\'inci',
80 => '\'inci',
2 => '\'nci',
7 => '\'nci',
20 => '\'nci',
50 => '\'nci',
3 => '\'üncü',
4 => '\'üncü',
100 => '\'üncü',
6 => '\'ncı',
9 => '\'uncu',
10 => '\'uncu',
30 => '\'uncu',
60 => '\'ıncı',
90 => '\'ıncı',
];
$lastDigit = $number % 10;
return $number.($suffixes[$lastDigit] ?? $suffixes[$number % 100 - $lastDigit] ?? $suffixes[$number >= 100 ? 100 : -1] ?? '');
}
},
'meridiem' => ['ÖÖ', 'ÖS', 'öö', 'ös'],
'months' => ['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık'],
'months_short' => ['Oca', 'Şub', 'Mar', 'Nis', 'May', 'Haz', 'Tem', 'Ağu', 'Eyl', 'Eki', 'Kas', 'Ara'],
'weekdays' => ['Pazar', 'Pazartesi', 'Salı', 'Çarşamba', 'Perşembe', 'Cuma', 'Cumartesi'],
'weekdays_short' => ['Paz', 'Pts', 'Sal', 'Çar', 'Per', 'Cum', 'Cts'],
'weekdays_min' => ['Pz', 'Pt', 'Sa', 'Ça', 'Pe', 'Cu', 'Ct'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' ve '],
];
src/Carbon/Lang/tr_CY.php 0000644 00000001230 14753612052 0011152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/tr.php', [
'weekdays_short' => ['Paz', 'Pzt', 'Sal', 'Çar', 'Per', 'Cum', 'Cmt'],
'weekdays_min' => ['Pa', 'Pt', 'Sa', 'Ça', 'Pe', 'Cu', 'Ct'],
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'D.MM.YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'D MMMM YYYY dddd h:mm a',
],
]);
src/Carbon/Lang/tr_TR.php 0000644 00000000413 14753612052 0011166 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/tr.php';
src/Carbon/Lang/ts.php 0000644 00000000516 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ts_ZA.php';
src/Carbon/Lang/ts_ZA.php 0000644 00000003436 14753612052 0011164 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Sunguti', 'Nyenyenyani', 'Nyenyankulu', 'Dzivamisoko', 'Mudyaxihi', 'Khotavuxika', 'Mawuwani', 'Mhawuri', 'Ndzhati', 'Nhlangula', 'Hukuri', 'N\'wendzamhala'],
'months_short' => ['Sun', 'Yan', 'Kul', 'Dzi', 'Mud', 'Kho', 'Maw', 'Mha', 'Ndz', 'Nhl', 'Huk', 'N\'w'],
'weekdays' => ['Sonto', 'Musumbhunuku', 'Ravumbirhi', 'Ravunharhu', 'Ravumune', 'Ravuntlhanu', 'Mugqivela'],
'weekdays_short' => ['Son', 'Mus', 'Bir', 'Har', 'Ne', 'Tlh', 'Mug'],
'weekdays_min' => ['Son', 'Mus', 'Bir', 'Har', 'Ne', 'Tlh', 'Mug'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => 'malembe ya :count',
'y' => 'malembe ya :count',
'a_year' => 'malembe ya :count',
'month' => 'tin’hweti ta :count',
'm' => 'tin’hweti ta :count',
'a_month' => 'tin’hweti ta :count',
'week' => 'mavhiki ya :count',
'w' => 'mavhiki ya :count',
'a_week' => 'mavhiki ya :count',
'day' => 'masiku :count',
'd' => 'masiku :count',
'a_day' => 'masiku :count',
'hour' => 'tiawara ta :count',
'h' => 'tiawara ta :count',
'a_hour' => 'tiawara ta :count',
'minute' => 'timinete ta :count',
'min' => 'timinete ta :count',
'a_minute' => 'timinete ta :count',
'second' => 'tisekoni ta :count',
's' => 'tisekoni ta :count',
'a_second' => 'tisekoni ta :count',
]);
src/Carbon/Lang/tt.php 0000644 00000000516 14753612052 0010567 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/tt_RU.php';
src/Carbon/Lang/tt_RU.php 0000644 00000003032 14753612052 0011171 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Rinat Norkin Pablo Saratxaga, Rinat Norkin pablo@mandrakesoft.com, rinat@taif.ru
*/
return [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'DD MMM, HH:mm',
'LLLL' => 'DD MMMM YYYY, HH:mm',
],
'months' => ['января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'],
'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
'weekdays' => ['якшәмбе', 'дышәмбе', 'сишәмбе', 'чәршәәмбе', 'пәнҗешмбе', 'җомга', 'шимбә'],
'weekdays_short' => ['якш', 'дыш', 'сиш', 'чәрш', 'пәнҗ', 'җом', 'шим'],
'weekdays_min' => ['якш', 'дыш', 'сиш', 'чәрш', 'пәнҗ', 'җом', 'шим'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count ел',
'month' => ':count ай',
'week' => ':count атна',
'day' => ':count көн',
'hour' => ':count сәгать',
'minute' => ':count минут',
'second' => ':count секунд',
];
src/Carbon/Lang/tt_RU@iqtelif.php 0000644 00000002026 14753612052 0012651 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Reshat Sabiq tatar.iqtelif.i18n@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD.MM.YYYY',
],
'months' => ['Ğınwar', 'Fiwral\'', 'Mart', 'April', 'May', 'Yün', 'Yül', 'Awgust', 'Sintebír', 'Üktebír', 'Noyebír', 'Dikebír'],
'months_short' => ['Ğın', 'Fiw', 'Mar', 'Apr', 'May', 'Yün', 'Yül', 'Awg', 'Sin', 'Ükt', 'Noy', 'Dik'],
'weekdays' => ['Yekşembí', 'Düşembí', 'Sişembí', 'Çerşembí', 'Pencíşembí', 'Comğa', 'Şimbe'],
'weekdays_short' => ['Yek', 'Düş', 'Siş', 'Çer', 'Pen', 'Com', 'Şim'],
'weekdays_min' => ['Yek', 'Düş', 'Siş', 'Çer', 'Pen', 'Com', 'Şim'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ÖA', 'ÖS'],
]);
src/Carbon/Lang/twq.php 0000644 00000000530 14753612052 0010747 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/ses.php', [
'meridiem' => ['Subbaahi', 'Zaarikay b'],
]);
src/Carbon/Lang/tzl.php 0000644 00000004440 14753612052 0010751 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return [
'year' => '[0,1]:count ar|:count ars',
'y' => '[0,1]:count ar|:count ars',
'month' => '[0,1]:count mes|:count mesen',
'm' => '[0,1]:count mes|:count mesen',
'week' => '[0,1]:count seifetziua|:count seifetziuas',
'w' => '[0,1]:count seifetziua|:count seifetziuas',
'day' => '[0,1]:count ziua|:count ziuas',
'd' => '[0,1]:count ziua|:count ziuas',
'hour' => '[0,1]:count þora|:count þoras',
'h' => '[0,1]:count þora|:count þoras',
'minute' => '[0,1]:count míut|:count míuts',
'min' => '[0,1]:count míut|:count míuts',
'second' => ':count secunds',
's' => ':count secunds',
'ago' => 'ja :time',
'from_now' => 'osprei :time',
'diff_yesterday' => 'ieiri',
'diff_yesterday_regexp' => 'ieiri(?:\\s+à)?',
'diff_today' => 'oxhi',
'diff_today_regexp' => 'oxhi(?:\\s+à)?',
'diff_tomorrow' => 'demà',
'diff_tomorrow_regexp' => 'demà(?:\\s+à)?',
'formats' => [
'LT' => 'HH.mm',
'LTS' => 'HH.mm.ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D. MMMM [dallas] YYYY',
'LLL' => 'D. MMMM [dallas] YYYY HH.mm',
'LLLL' => 'dddd, [li] D. MMMM [dallas] YYYY HH.mm',
],
'calendar' => [
'sameDay' => '[oxhi à] LT',
'nextDay' => '[demà à] LT',
'nextWeek' => 'dddd [à] LT',
'lastDay' => '[ieiri à] LT',
'lastWeek' => '[sür el] dddd [lasteu à] LT',
'sameElse' => 'L',
],
'meridiem' => ["D'A", "D'O"],
'months' => ['Januar', 'Fevraglh', 'Març', 'Avrïu', 'Mai', 'Gün', 'Julia', 'Guscht', 'Setemvar', 'Listopäts', 'Noemvar', 'Zecemvar'],
'months_short' => ['Jan', 'Fev', 'Mar', 'Avr', 'Mai', 'Gün', 'Jul', 'Gus', 'Set', 'Lis', 'Noe', 'Zec'],
'weekdays' => ['Súladi', 'Lúneçi', 'Maitzi', 'Márcuri', 'Xhúadi', 'Viénerçi', 'Sáturi'],
'weekdays_short' => ['Súl', 'Lún', 'Mai', 'Már', 'Xhú', 'Vié', 'Sát'],
'weekdays_min' => ['Sú', 'Lú', 'Ma', 'Má', 'Xh', 'Vi', 'Sá'],
'ordinal' => ':number.',
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
];
src/Carbon/Lang/tzm.php 0000644 00000005254 14753612052 0010756 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - JD Isaacks
*/
return [
'year' => '{1}ⴰⵙⴳⴰⵙ|:count ⵉⵙⴳⴰⵙⵏ',
'month' => '{1}ⴰⵢoⵓⵔ|:count ⵉⵢⵢⵉⵔⵏ',
'week' => ':count ⵉⵎⴰⵍⴰⵙⵙ',
'day' => '{1}ⴰⵙⵙ|:count oⵙⵙⴰⵏ',
'hour' => '{1}ⵙⴰⵄⴰ|:count ⵜⴰⵙⵙⴰⵄⵉⵏ',
'minute' => '{1}ⵎⵉⵏⵓⴺ|:count ⵎⵉⵏⵓⴺ',
'second' => '{1}ⵉⵎⵉⴽ|:count ⵉⵎⵉⴽ',
'ago' => 'ⵢⴰⵏ :time',
'from_now' => 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ :time',
'diff_today' => 'ⴰⵙⴷⵅ',
'diff_yesterday' => 'ⴰⵚⴰⵏⵜ',
'diff_yesterday_regexp' => 'ⴰⵚⴰⵏⵜ(?:\\s+ⴴ)?',
'diff_tomorrow' => 'ⴰⵙⴽⴰ',
'diff_tomorrow_regexp' => 'ⴰⵙⴽⴰ(?:\\s+ⴴ)?',
'diff_today_regexp' => 'ⴰⵙⴷⵅ(?:\\s+ⴴ)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[ⴰⵙⴷⵅ ⴴ] LT',
'nextDay' => '[ⴰⵙⴽⴰ ⴴ] LT',
'nextWeek' => 'dddd [ⴴ] LT',
'lastDay' => '[ⴰⵚⴰⵏⵜ ⴴ] LT',
'lastWeek' => 'dddd [ⴴ] LT',
'sameElse' => 'L',
],
'months' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵟⵓⴱⵕ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⵏⴱⵉⵔ'],
'months_short' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵟⵓⴱⵕ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⵏⴱⵉⵔ'],
'weekdays' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵔⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⴰⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
'weekdays_short' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵔⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⴰⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
'weekdays_min' => ['ⴰⵙⴰⵎⴰⵙ', 'ⴰⵢⵏⴰⵙ', 'ⴰⵙⵉⵏⴰⵙ', 'ⴰⴽⵔⴰⵙ', 'ⴰⴽⵡⴰⵙ', 'ⴰⵙⵉⵎⵡⴰⵙ', 'ⴰⵙⵉⴹⵢⴰⵙ'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
'weekend' => [5, 6],
];
src/Carbon/Lang/tzm_Latn.php 0000644 00000004425 14753612052 0011733 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - JD Isaacks
*/
return [
'year' => '{1}:count asgas|:count isgasn',
'a_year' => 'asgas|:count isgasn',
'month' => '{1}:count ayowr|:count iyyirn',
'a_month' => 'ayowr|:count iyyirn',
'week' => ':count imalass',
'a_week' => ':imalass',
'day' => '{1}:count ass|:count ossan',
'a_day' => 'ass|:count ossan',
'hour' => '{1}:count saɛa|:count tassaɛin',
'a_hour' => '{1}saɛa|:count tassaɛin',
'minute' => ':count minuḍ',
'a_minute' => '{1}minuḍ|:count minuḍ',
'second' => ':count imik',
'a_second' => '{1}imik|:count imik',
'ago' => 'yan :time',
'from_now' => 'dadkh s yan :time',
'diff_yesterday' => 'assant',
'diff_yesterday_regexp' => 'assant(?:\\s+g)?',
'diff_today' => 'asdkh',
'diff_today_regexp' => 'asdkh(?:\\s+g)?',
'diff_tomorrow' => 'aska',
'diff_tomorrow_regexp' => 'aska(?:\\s+g)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[asdkh g] LT',
'nextDay' => '[aska g] LT',
'nextWeek' => 'dddd [g] LT',
'lastDay' => '[assant g] LT',
'lastWeek' => 'dddd [g] LT',
'sameElse' => 'L',
],
'months' => ['innayr', 'brˤayrˤ', 'marˤsˤ', 'ibrir', 'mayyw', 'ywnyw', 'ywlywz', 'ɣwšt', 'šwtanbir', 'ktˤwbrˤ', 'nwwanbir', 'dwjnbir'],
'months_short' => ['innayr', 'brˤayrˤ', 'marˤsˤ', 'ibrir', 'mayyw', 'ywnyw', 'ywlywz', 'ɣwšt', 'šwtanbir', 'ktˤwbrˤ', 'nwwanbir', 'dwjnbir'],
'weekdays' => ['asamas', 'aynas', 'asinas', 'akras', 'akwas', 'asimwas', 'asiḍyas'],
'weekdays_short' => ['asamas', 'aynas', 'asinas', 'akras', 'akwas', 'asimwas', 'asiḍyas'],
'weekdays_min' => ['asamas', 'aynas', 'asinas', 'akras', 'akwas', 'asimwas', 'asiḍyas'],
'meridiem' => ['Zdat azal', 'Ḍeffir aza'],
'first_day_of_week' => 6,
'day_of_first_week_of_year' => 1,
];
src/Carbon/Lang/ug.php 0000644 00000006311 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Philippe Vaucher
* - Tsutomu Kuroda
* - yasinn
*/
return [
'year' => '{1}'.'بىر يىل'.'|:count '.'يىل',
'month' => '{1}'.'بىر ئاي'.'|:count '.'ئاي',
'week' => '{1}'.'بىر ھەپتە'.'|:count '.'ھەپتە',
'day' => '{1}'.'بىر كۈن'.'|:count '.'كۈن',
'hour' => '{1}'.'بىر سائەت'.'|:count '.'سائەت',
'minute' => '{1}'.'بىر مىنۇت'.'|:count '.'مىنۇت',
'second' => '{1}'.'نەچچە سېكونت'.'|:count '.'سېكونت',
'ago' => ':time بۇرۇن',
'from_now' => ':time كېيىن',
'diff_today' => 'بۈگۈن',
'diff_yesterday' => 'تۆنۈگۈن',
'diff_tomorrow' => 'ئەتە',
'diff_tomorrow_regexp' => 'ئەتە(?:\\s+سائەت)?',
'diff_today_regexp' => 'بۈگۈن(?:\\s+سائەت)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-DD',
'LL' => 'YYYY-يىلىM-ئاينىڭD-كۈنى',
'LLL' => 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',
'LLLL' => 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm',
],
'calendar' => [
'sameDay' => '[بۈگۈن سائەت] LT',
'nextDay' => '[ئەتە سائەت] LT',
'nextWeek' => '[كېلەركى] dddd [سائەت] LT',
'lastDay' => '[تۆنۈگۈن] LT',
'lastWeek' => '[ئالدىنقى] dddd [سائەت] LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return match ($period) {
'd', 'D', 'DDD' => $number.'-كۈنى',
'w', 'W' => $number.'-ھەپتە',
default => $number,
};
},
'meridiem' => static function ($hour, $minute) {
$time = $hour * 100 + $minute;
if ($time < 600) {
return 'يېرىم كېچە';
}
if ($time < 900) {
return 'سەھەر';
}
if ($time < 1130) {
return 'چۈشتىن بۇرۇن';
}
if ($time < 1230) {
return 'چۈش';
}
if ($time < 1800) {
return 'چۈشتىن كېيىن';
}
return 'كەچ';
},
'months' => ['يانۋار', 'فېۋرال', 'مارت', 'ئاپرېل', 'ماي', 'ئىيۇن', 'ئىيۇل', 'ئاۋغۇست', 'سېنتەبىر', 'ئۆكتەبىر', 'نويابىر', 'دېكابىر'],
'months_short' => ['يانۋار', 'فېۋرال', 'مارت', 'ئاپرېل', 'ماي', 'ئىيۇن', 'ئىيۇل', 'ئاۋغۇست', 'سېنتەبىر', 'ئۆكتەبىر', 'نويابىر', 'دېكابىر'],
'weekdays' => ['يەكشەنبە', 'دۈشەنبە', 'سەيشەنبە', 'چارشەنبە', 'پەيشەنبە', 'جۈمە', 'شەنبە'],
'weekdays_short' => ['يە', 'دۈ', 'سە', 'چا', 'پە', 'جۈ', 'شە'],
'weekdays_min' => ['يە', 'دۈ', 'سە', 'چا', 'پە', 'جۈ', 'شە'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' ۋە '],
];
src/Carbon/Lang/ug_CN.php 0000644 00000000501 14753612052 0011125 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Kunal Marwaha
* - Alim Boyaq
*/
return require __DIR__.'/ug.php';
src/Carbon/Lang/uk.php 0000644 00000021421 14753612052 0010555 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
use Carbon\CarbonInterface;
$processHoursFunction = static function (CarbonInterface $date, string $format) {
return $format.'о'.($date->hour === 11 ? 'б' : '').'] LT';
};
/*
* Authors:
* - Kunal Marwaha
* - Josh Soref
* - François B
* - Tim Fish
* - Serhan Apaydın
* - Max Mykhailenko
* - JD Isaacks
* - Max Kovpak
* - AucT
* - Philippe Vaucher
* - Ilya Shaplyko
* - Vadym Ievsieiev
* - Denys Kurets
* - Igor Kasyanchuk
* - Tsutomu Kuroda
* - tjku
* - Max Melentiev
* - Oleh
* - epaminond
* - Juanito Fatas
* - Vitalii Khustochka
* - Akira Matsuda
* - Christopher Dell
* - Enrique Vidal
* - Simone Carletti
* - Aaron Patterson
* - Andriy Tyurnikov
* - Nicolás Hock Isaza
* - Iwakura Taro
* - Andrii Ponomarov
* - alecrabbit
* - vystepanenko
* - AlexWalkerson
* - Andre Havryliuk (Andrend)
* - Max Datsenko (datsenko-md)
*/
return [
'year' => ':count рік|:count роки|:count років',
'y' => ':countр|:countрр|:countрр',
'a_year' => '{1}рік|:count рік|:count роки|:count років',
'month' => ':count місяць|:count місяці|:count місяців',
'm' => ':countм',
'a_month' => '{1}місяць|:count місяць|:count місяці|:count місяців',
'week' => ':count тиждень|:count тижні|:count тижнів',
'w' => ':countт',
'a_week' => '{1}тиждень|:count тиждень|:count тижні|:count тижнів',
'day' => ':count день|:count дні|:count днів',
'd' => ':countд',
'a_day' => '{1}день|:count день|:count дні|:count днів',
'hour' => ':count година|:count години|:count годин',
'h' => ':countг',
'a_hour' => '{1}година|:count година|:count години|:count годин',
'minute' => ':count хвилина|:count хвилини|:count хвилин',
'min' => ':countхв',
'a_minute' => '{1}хвилина|:count хвилина|:count хвилини|:count хвилин',
'second' => ':count секунда|:count секунди|:count секунд',
's' => ':countсек',
'a_second' => '{1}декілька секунд|:count секунда|:count секунди|:count секунд',
'hour_ago' => ':count годину|:count години|:count годин',
'a_hour_ago' => '{1}годину|:count годину|:count години|:count годин',
'minute_ago' => ':count хвилину|:count хвилини|:count хвилин',
'a_minute_ago' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
'second_ago' => ':count секунду|:count секунди|:count секунд',
'a_second_ago' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
'hour_from_now' => ':count годину|:count години|:count годин',
'a_hour_from_now' => '{1}годину|:count годину|:count години|:count годин',
'minute_from_now' => ':count хвилину|:count хвилини|:count хвилин',
'a_minute_from_now' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
'second_from_now' => ':count секунду|:count секунди|:count секунд',
'a_second_from_now' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
'hour_after' => ':count годину|:count години|:count годин',
'a_hour_after' => '{1}годину|:count годину|:count години|:count годин',
'minute_after' => ':count хвилину|:count хвилини|:count хвилин',
'a_minute_after' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
'second_after' => ':count секунду|:count секунди|:count секунд',
'a_second_after' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
'hour_before' => ':count годину|:count години|:count годин',
'a_hour_before' => '{1}годину|:count годину|:count години|:count годин',
'minute_before' => ':count хвилину|:count хвилини|:count хвилин',
'a_minute_before' => '{1}хвилину|:count хвилину|:count хвилини|:count хвилин',
'second_before' => ':count секунду|:count секунди|:count секунд',
'a_second_before' => '{1}декілька секунд|:count секунду|:count секунди|:count секунд',
'ago' => ':time тому',
'from_now' => 'за :time',
'after' => ':time після',
'before' => ':time до',
'diff_now' => 'щойно',
'diff_today' => 'Сьогодні',
'diff_today_regexp' => 'Сьогодні(?:\\s+о)?',
'diff_yesterday' => 'вчора',
'diff_yesterday_regexp' => 'Вчора(?:\\s+о)?',
'diff_tomorrow' => 'завтра',
'diff_tomorrow_regexp' => 'Завтра(?:\\s+о)?',
'diff_before_yesterday' => 'позавчора',
'diff_after_tomorrow' => 'післязавтра',
'period_recurrences' => 'один раз|:count рази|:count разів',
'period_interval' => 'кожні :interval',
'period_start_date' => 'з :date',
'period_end_date' => 'до :date',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY, HH:mm',
'LLLL' => 'dddd, D MMMM YYYY, HH:mm',
],
'calendar' => [
'sameDay' => static fn (CarbonInterface $date) => $processHoursFunction($date, '[Сьогодні '),
'nextDay' => static fn (CarbonInterface $date) => $processHoursFunction($date, '[Завтра '),
'nextWeek' => static fn (CarbonInterface $date) => $processHoursFunction($date, '[У] dddd ['),
'lastDay' => static fn (CarbonInterface $date) => $processHoursFunction($date, '[Вчора '),
'lastWeek' => static fn (CarbonInterface $date) => match ($date->dayOfWeek) {
0, 3, 5, 6 => $processHoursFunction($date, '[Минулої] dddd ['),
default => $processHoursFunction($date, '[Минулого] dddd ['),
},
'sameElse' => 'L',
],
'ordinal' => static fn ($number, $period) => match ($period) {
'M', 'd', 'DDD', 'w', 'W' => $number.'-й',
'D' => $number.'-го',
default => $number,
},
'meridiem' => static function ($hour) {
if ($hour < 4) {
return 'ночі';
}
if ($hour < 12) {
return 'ранку';
}
if ($hour < 17) {
return 'дня';
}
return 'вечора';
},
'months' => ['січня', 'лютого', 'березня', 'квітня', 'травня', 'червня', 'липня', 'серпня', 'вересня', 'жовтня', 'листопада', 'грудня'],
'months_standalone' => ['січень', 'лютий', 'березень', 'квітень', 'травень', 'червень', 'липень', 'серпень', 'вересень', 'жовтень', 'листопад', 'грудень'],
'months_short' => ['січ', 'лют', 'бер', 'кві', 'тра', 'чер', 'лип', 'сер', 'вер', 'жов', 'лис', 'гру'],
'months_regexp' => '/(D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|L{2,4}|l{2,4})/',
'weekdays' => static function (CarbonInterface $date, $format, $index) {
static $words = [
'nominative' => ['неділя', 'понеділок', 'вівторок', 'середа', 'четвер', 'п’ятниця', 'субота'],
'accusative' => ['неділю', 'понеділок', 'вівторок', 'середу', 'четвер', 'п’ятницю', 'суботу'],
'genitive' => ['неділі', 'понеділка', 'вівторка', 'середи', 'четверга', 'п’ятниці', 'суботи'],
];
$format ??= '';
$nounCase = preg_match('/(\[(В|в|У|у)\])\s+dddd/u', $format)
? 'accusative'
: (
preg_match('/\[?(?:минулої|наступної)?\s*\]\s+dddd/u', $format)
? 'genitive'
: 'nominative'
);
return $words[$nounCase][$index] ?? null;
},
'weekdays_short' => ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
'weekdays_min' => ['нд', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' i '],
];
src/Carbon/Lang/uk_UA.php 0000644 00000000413 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/uk.php';
src/Carbon/Lang/unm.php 0000644 00000000517 14753612052 0010740 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/unm_US.php';
src/Carbon/Lang/unm_US.php 0000644 00000003671 14753612052 0011353 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['enikwsi', 'chkwali', 'xamokhwite', 'kwetayoxe', 'tainipen', 'kichinipen', 'lainipen', 'winaminke', 'kichitahkok', 'puksit', 'wini', 'muxkotae'],
'months_short' => ['eni', 'chk', 'xam', 'kwe', 'tai', 'nip', 'lai', 'win', 'tah', 'puk', 'kun', 'mux'],
'weekdays' => ['kentuwei', 'manteke', 'tusteke', 'lelai', 'tasteke', 'pelaiteke', 'sateteke'],
'weekdays_short' => ['ken', 'man', 'tus', 'lel', 'tas', 'pel', 'sat'],
'weekdays_min' => ['ken', 'man', 'tus', 'lel', 'tas', 'pel', 'sat'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
// Too unreliable
/*
'year' => ':count kaxtëne',
'y' => ':count kaxtëne',
'a_year' => ':count kaxtëne',
'month' => ':count piskewëni kishux', // less reliable
'm' => ':count piskewëni kishux', // less reliable
'a_month' => ':count piskewëni kishux', // less reliable
'week' => ':count kishku', // less reliable
'w' => ':count kishku', // less reliable
'a_week' => ':count kishku', // less reliable
'day' => ':count kishku',
'd' => ':count kishku',
'a_day' => ':count kishku',
'hour' => ':count xkuk', // less reliable
'h' => ':count xkuk', // less reliable
'a_hour' => ':count xkuk', // less reliable
'minute' => ':count txituwàk', // less reliable
'min' => ':count txituwàk', // less reliable
'a_minute' => ':count txituwàk', // less reliable
'second' => ':count nisha', // less reliable
's' => ':count nisha', // less reliable
'a_second' => ':count nisha', // less reliable
*/
]);
src/Carbon/Lang/ur.php 0000644 00000004511 14753612052 0010565 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
$months = [
'جنوری',
'فروری',
'مارچ',
'اپریل',
'مئی',
'جون',
'جولائی',
'اگست',
'ستمبر',
'اکتوبر',
'نومبر',
'دسمبر',
];
$weekdays = [
'اتوار',
'پیر',
'منگل',
'بدھ',
'جمعرات',
'جمعہ',
'ہفتہ',
];
/*
* Authors:
* - Sawood Alam
* - Mehshan
* - Philippe Vaucher
* - Tsutomu Kuroda
* - tjku
* - Zaid Akram
* - Max Melentiev
* - hafezdivandari
* - Hossein Jabbari
* - nimamo
*/
return [
'year' => 'ایک سال|:count سال',
'month' => 'ایک ماہ|:count ماہ',
'week' => ':count ہفتے',
'day' => 'ایک دن|:count دن',
'hour' => 'ایک گھنٹہ|:count گھنٹے',
'minute' => 'ایک منٹ|:count منٹ',
'second' => 'چند سیکنڈ|:count سیکنڈ',
'ago' => ':time قبل',
'from_now' => ':time بعد',
'after' => ':time بعد',
'before' => ':time پہلے',
'diff_now' => 'اب',
'diff_today' => 'آج',
'diff_today_regexp' => 'آج(?:\\s+بوقت)?',
'diff_yesterday' => 'گزشتہ کل',
'diff_yesterday_regexp' => 'گذشتہ(?:\\s+روز)?(?:\\s+بوقت)?',
'diff_tomorrow' => 'آئندہ کل',
'diff_tomorrow_regexp' => 'کل(?:\\s+بوقت)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd، D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[آج بوقت] LT',
'nextDay' => '[کل بوقت] LT',
'nextWeek' => 'dddd [بوقت] LT',
'lastDay' => '[گذشتہ روز بوقت] LT',
'lastWeek' => '[گذشتہ] dddd [بوقت] LT',
'sameElse' => 'L',
],
'meridiem' => ['صبح', 'شام'],
'months' => $months,
'months_short' => $months,
'weekdays' => $weekdays,
'weekdays_short' => $weekdays,
'weekdays_min' => $weekdays,
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => ['، ', ' اور '],
];
src/Carbon/Lang/ur_IN.php 0000644 00000002175 14753612052 0011157 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Red Hat, Pune bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/ur.php', [
'formats' => [
'L' => 'D/M/YY',
],
'months' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'months_short' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'weekdays' => ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'سنیچر'],
'weekdays_short' => ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'سنیچر'],
'weekdays_min' => ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'سنیچر'],
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/ur_PK.php 0000644 00000002212 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/ur.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'months_short' => ['جنوری', 'فروری', 'مارچ', 'اپریل', 'مئی', 'جون', 'جولائی', 'اگست', 'ستمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'weekdays' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
'weekdays_short' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
'weekdays_min' => ['اتوار', 'پير', 'منگل', 'بدھ', 'جمعرات', 'جمعه', 'هفته'],
'day_of_first_week_of_year' => 1,
'meridiem' => ['ص', 'ش'],
]);
src/Carbon/Lang/uz.php 0000644 00000005776 14753612052 0010613 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Dmitriy Shabanov
* - JD Isaacks
* - Inoyatulloh
* - Jamshid
* - aarkhipov
* - Philippe Vaucher
* - felixthemagnificent
* - Tsutomu Kuroda
* - tjku
* - Max Melentiev
* - Juanito Fatas
* - Alisher Ulugbekov
* - Ergashev Adizbek
*/
return [
'year' => ':count йил',
'a_year' => '{1}бир йил|:count йил',
'y' => ':count й',
'month' => ':count ой',
'a_month' => '{1}бир ой|:count ой',
'm' => ':count о',
'week' => ':count ҳафта',
'a_week' => '{1}бир ҳафта|:count ҳафта',
'w' => ':count ҳ',
'day' => ':count кун',
'a_day' => '{1}бир кун|:count кун',
'd' => ':count к',
'hour' => ':count соат',
'a_hour' => '{1}бир соат|:count соат',
'h' => ':count с',
'minute' => ':count дақиқа',
'a_minute' => '{1}бир дақиқа|:count дақиқа',
'min' => ':count д',
'second' => ':count сония',
'a_second' => '{1}сония|:count сония',
's' => ':count с',
'ago' => ':time аввал',
'from_now' => 'Якин :time ичида',
'after' => ':timeдан кейин',
'before' => ':time олдин',
'diff_now' => 'ҳозир',
'diff_today' => 'Бугун',
'diff_today_regexp' => 'Бугун(?:\\s+соат)?',
'diff_yesterday' => 'Кеча',
'diff_yesterday_regexp' => 'Кеча(?:\\s+соат)?',
'diff_tomorrow' => 'Эртага',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'D MMMM YYYY, dddd HH:mm',
],
'calendar' => [
'sameDay' => '[Бугун соат] LT [да]',
'nextDay' => '[Эртага] LT [да]',
'nextWeek' => 'dddd [куни соат] LT [да]',
'lastDay' => '[Кеча соат] LT [да]',
'lastWeek' => '[Утган] dddd [куни соат] LT [да]',
'sameElse' => 'L',
],
'months' => ['январ', 'феврал', 'март', 'апрел', 'май', 'июн', 'июл', 'август', 'сентябр', 'октябр', 'ноябр', 'декабр'],
'months_short' => ['янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'],
'weekdays' => ['якшанба', 'душанба', 'сешанба', 'чоршанба', 'пайшанба', 'жума', 'шанба'],
'weekdays_short' => ['якш', 'душ', 'сеш', 'чор', 'пай', 'жум', 'шан'],
'weekdays_min' => ['як', 'ду', 'се', 'чо', 'па', 'жу', 'ша'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'meridiem' => ['эрталаб', 'кечаси'],
'list' => [', ', ' ва '],
];
src/Carbon/Lang/uz_Arab.php 0000644 00000002227 14753612052 0011524 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/fa.php', [
'weekdays' => ['یکشنبه', 'دوشنبه', 'سهشنبه', 'چهارشنبه', 'پنجشنبه', 'جمعه', 'شنبه'],
'weekdays_short' => ['ی.', 'د.', 'س.', 'چ.', 'پ.', 'ج.', 'ش.'],
'weekdays_min' => ['ی.', 'د.', 'س.', 'چ.', 'پ.', 'ج.', 'ش.'],
'months' => ['جنوری', 'فبروری', 'مارچ', 'اپریل', 'می', 'جون', 'جولای', 'اگست', 'سپتمبر', 'اکتوبر', 'نومبر', 'دسمبر'],
'months_short' => ['جنو', 'فبر', 'مار', 'اپر', 'می', 'جون', 'جول', 'اگس', 'سپت', 'اکت', 'نوم', 'دسم'],
'first_day_of_week' => 6,
'weekend' => [4, 5],
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'YYYY MMMM D, dddd HH:mm',
],
]);
src/Carbon/Lang/uz_Cyrl.php 0000644 00000000767 14753612052 0011577 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/uz.php', [
'formats' => [
'L' => 'DD/MM/yy',
'LL' => 'D MMM, YYYY',
'LLL' => 'D MMMM, YYYY HH:mm',
'LLLL' => 'dddd, DD MMMM, YYYY HH:mm',
],
'meridiem' => ['ТО', 'ТК'],
]);
src/Carbon/Lang/uz_Latn.php 0000644 00000004655 14753612052 0011564 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Josh Soref
* - Rasulbek
* - Ilyosjon Kamoldinov (ilyosjon09)
*/
return [
'year' => ':count yil',
'a_year' => '{1}bir yil|:count yil',
'y' => ':count y',
'month' => ':count oy',
'a_month' => '{1}bir oy|:count oy',
'm' => ':count o',
'week' => ':count hafta',
'a_week' => '{1}bir hafta|:count hafta',
'w' => ':count h',
'day' => ':count kun',
'a_day' => '{1}bir kun|:count kun',
'd' => ':count k',
'hour' => ':count soat',
'a_hour' => '{1}bir soat|:count soat',
'h' => ':count soat',
'minute' => ':count daqiqa',
'a_minute' => '{1}bir daqiqa|:count daqiqa',
'min' => ':count d',
'second' => ':count soniya',
'a_second' => '{1}soniya|:count soniya',
's' => ':count son.',
'ago' => ':time avval',
'from_now' => 'Yaqin :time ichida',
'after' => ':timedan keyin',
'before' => ':time oldin',
'diff_yesterday' => 'Kecha',
'diff_yesterday_regexp' => 'Kecha(?:\\s+soat)?',
'diff_today' => 'Bugun',
'diff_today_regexp' => 'Bugun(?:\\s+soat)?',
'diff_tomorrow' => 'Ertaga',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'D MMMM YYYY, dddd HH:mm',
],
'calendar' => [
'sameDay' => '[Bugun soat] LT [da]',
'nextDay' => '[Ertaga] LT [da]',
'nextWeek' => 'dddd [kuni soat] LT [da]',
'lastDay' => '[Kecha soat] LT [da]',
'lastWeek' => '[O\'tgan] dddd [kuni soat] LT [da]',
'sameElse' => 'L',
],
'months' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'Iyun', 'Iyul', 'Avgust', 'Sentabr', 'Oktabr', 'Noyabr', 'Dekabr'],
'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'Iyun', 'Iyul', 'Avg', 'Sen', 'Okt', 'Noy', 'Dek'],
'weekdays' => ['Yakshanba', 'Dushanba', 'Seshanba', 'Chorshanba', 'Payshanba', 'Juma', 'Shanba'],
'weekdays_short' => ['Yak', 'Dush', 'Sesh', 'Chor', 'Pay', 'Jum', 'Shan'],
'weekdays_min' => ['Ya', 'Du', 'Se', 'Cho', 'Pa', 'Ju', 'Sha'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' va '],
'meridiem' => ['TO', 'TK'],
];
src/Carbon/Lang/uz_UZ.php 0000644 00000002043 14753612052 0011211 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Bobir Ismailov Bobir Ismailov, Pablo Saratxaga, Mashrab Kuvatov bobir_is@yahoo.com, pablo@mandrakesoft.com, kmashrab@uni-bremen.de
*/
return array_replace_recursive(require __DIR__.'/uz_Latn.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Yanvar', 'Fevral', 'Mart', 'Aprel', 'May', 'Iyun', 'Iyul', 'Avgust', 'Sentabr', 'Oktabr', 'Noyabr', 'Dekabr'],
'months_short' => ['Yan', 'Fev', 'Mar', 'Apr', 'May', 'Iyn', 'Iyl', 'Avg', 'Sen', 'Okt', 'Noy', 'Dek'],
'weekdays' => ['Yakshanba', 'Dushanba', 'Seshanba', 'Chorshanba', 'Payshanba', 'Juma', 'Shanba'],
'weekdays_short' => ['Yak', 'Du', 'Se', 'Cho', 'Pay', 'Ju', 'Sha'],
'weekdays_min' => ['Yak', 'Du', 'Se', 'Cho', 'Pay', 'Ju', 'Sha'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/uz_UZ@cyrillic.php 0000644 00000002254 14753612052 0013050 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Mashrab Kuvatov Mashrab Kuvatov, Pablo Saratxaga kmashrab@uni-bremen.de, pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/uz.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['Январ', 'Феврал', 'Март', 'Апрел', 'Май', 'Июн', 'Июл', 'Август', 'Сентябр', 'Октябр', 'Ноябр', 'Декабр'],
'months_short' => ['Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек'],
'weekdays' => ['Якшанба', 'Душанба', 'Сешанба', 'Чоршанба', 'Пайшанба', 'Жума', 'Шанба'],
'weekdays_short' => ['Якш', 'Душ', 'Сеш', 'Чор', 'Пай', 'Жум', 'Шан'],
'weekdays_min' => ['Якш', 'Душ', 'Сеш', 'Чор', 'Пай', 'Жум', 'Шан'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/vai.php 0000644 00000003040 14753612052 0010712 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'weekdays' => ['ꕞꕌꔵ', 'ꗳꗡꘉ', 'ꕚꕞꕚ', 'ꕉꕞꕒ', 'ꕉꔤꕆꕢ', 'ꕉꔤꕀꕮ', 'ꔻꔬꔳ'],
'weekdays_short' => ['ꕞꕌꔵ', 'ꗳꗡꘉ', 'ꕚꕞꕚ', 'ꕉꕞꕒ', 'ꕉꔤꕆꕢ', 'ꕉꔤꕀꕮ', 'ꔻꔬꔳ'],
'weekdays_min' => ['ꕞꕌꔵ', 'ꗳꗡꘉ', 'ꕚꕞꕚ', 'ꕉꕞꕒ', 'ꕉꔤꕆꕢ', 'ꕉꔤꕀꕮ', 'ꔻꔬꔳ'],
'months' => ['ꖨꖕ ꕪꕴ ꔞꔀꕮꕊ', 'ꕒꕡꖝꖕ', 'ꕾꖺ', 'ꖢꖕ', 'ꖑꕱ', 'ꖱꘋ', 'ꖱꕞꔤ', 'ꗛꔕ', 'ꕢꕌ', 'ꕭꖃ', 'ꔞꘋꕔꕿ ꕸꖃꗏ', 'ꖨꖕ ꕪꕴ ꗏꖺꕮꕊ'],
'months_short' => ['ꖨꖕꔞ', 'ꕒꕡ', 'ꕾꖺ', 'ꖢꖕ', 'ꖑꕱ', 'ꖱꘋ', 'ꖱꕞ', 'ꗛꔕ', 'ꕢꕌ', 'ꕭꖃ', 'ꔞꘋ', 'ꖨꖕꗏ'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd, D MMMM YYYY h:mm a',
],
'year' => ':count ꕀ', // less reliable
'y' => ':count ꕀ', // less reliable
'a_year' => ':count ꕀ', // less reliable
'second' => ':count ꗱꕞꕯꕊ', // less reliable
's' => ':count ꗱꕞꕯꕊ', // less reliable
'a_second' => ':count ꗱꕞꕯꕊ', // less reliable
]);
src/Carbon/Lang/vai_Latn.php 0000644 00000002163 14753612052 0011675 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'weekdays' => ['lahadi', 'tɛɛnɛɛ', 'talata', 'alaba', 'aimisa', 'aijima', 'siɓiti'],
'weekdays_short' => ['lahadi', 'tɛɛnɛɛ', 'talata', 'alaba', 'aimisa', 'aijima', 'siɓiti'],
'weekdays_min' => ['lahadi', 'tɛɛnɛɛ', 'talata', 'alaba', 'aimisa', 'aijima', 'siɓiti'],
'months' => ['luukao kemã', 'ɓandaɓu', 'vɔɔ', 'fulu', 'goo', '6', '7', 'kɔnde', 'saah', 'galo', 'kenpkato ɓololɔ', 'luukao lɔma'],
'months_short' => ['luukao kemã', 'ɓandaɓu', 'vɔɔ', 'fulu', 'goo', '6', '7', 'kɔnde', 'saah', 'galo', 'kenpkato ɓololɔ', 'luukao lɔma'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'h:mm a',
'LTS' => 'h:mm:ss a',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY h:mm a',
'LLLL' => 'dddd, D MMMM YYYY h:mm a',
],
]);
src/Carbon/Lang/vai_Vaii.php 0000644 00000000414 14753612052 0011664 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/vai.php';
src/Carbon/Lang/ve.php 0000644 00000000516 14753612052 0010552 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/ve_ZA.php';
src/Carbon/Lang/ve_ZA.php 0000644 00000003363 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Phando', 'Luhuhi', 'Ṱhafamuhwe', 'Lambamai', 'Shundunthule', 'Fulwi', 'Fulwana', 'Ṱhangule', 'Khubvumedzi', 'Tshimedzi', 'Ḽara', 'Nyendavhusiku'],
'months_short' => ['Pha', 'Luh', 'Fam', 'Lam', 'Shu', 'Lwi', 'Lwa', 'Ngu', 'Khu', 'Tsh', 'Ḽar', 'Nye'],
'weekdays' => ['Swondaha', 'Musumbuluwo', 'Ḽavhuvhili', 'Ḽavhuraru', 'Ḽavhuṋa', 'Ḽavhuṱanu', 'Mugivhela'],
'weekdays_short' => ['Swo', 'Mus', 'Vhi', 'Rar', 'ṋa', 'Ṱan', 'Mug'],
'weekdays_min' => ['Swo', 'Mus', 'Vhi', 'Rar', 'ṋa', 'Ṱan', 'Mug'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
// Too unreliable
/*
'day' => ':count vhege', // less reliable
'd' => ':count vhege', // less reliable
'a_day' => ':count vhege', // less reliable
'hour' => ':count watshi', // less reliable
'h' => ':count watshi', // less reliable
'a_hour' => ':count watshi', // less reliable
'minute' => ':count watshi', // less reliable
'min' => ':count watshi', // less reliable
'a_minute' => ':count watshi', // less reliable
'second' => ':count Mu', // less reliable
's' => ':count Mu', // less reliable
'a_second' => ':count Mu', // less reliable
'week' => ':count vhege',
'w' => ':count vhege',
'a_week' => ':count vhege',
*/
]);
src/Carbon/Lang/vi.php 0000644 00000005351 14753612052 0010560 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Andre Polykanine A.K.A. Menelion Elensúlë
* - JD Isaacks
*/
return [
'year' => ':count năm',
'a_year' => '{1}một năm|]1, Inf[:count năm',
'y' => ':count năm',
'month' => ':count tháng',
'a_month' => '{1}một tháng|]1, Inf[:count tháng',
'm' => ':count tháng',
'week' => ':count tuần',
'a_week' => '{1}một tuần|]1, Inf[:count tuần',
'w' => ':count tuần',
'day' => ':count ngày',
'a_day' => '{1}một ngày|]1, Inf[:count ngày',
'd' => ':count ngày',
'hour' => ':count giờ',
'a_hour' => '{1}một giờ|]1, Inf[:count giờ',
'h' => ':count giờ',
'minute' => ':count phút',
'a_minute' => '{1}một phút|]1, Inf[:count phút',
'min' => ':count phút',
'second' => ':count giây',
'a_second' => '{1}vài giây|]1, Inf[:count giây',
's' => ':count giây',
'ago' => ':time trước',
'from_now' => ':time tới',
'after' => ':time sau',
'before' => ':time trước',
'diff_now' => 'bây giờ',
'diff_today' => 'Hôm',
'diff_today_regexp' => 'Hôm(?:\\s+nay)?(?:\\s+lúc)?',
'diff_yesterday' => 'Hôm qua',
'diff_yesterday_regexp' => 'Hôm(?:\\s+qua)?(?:\\s+lúc)?',
'diff_tomorrow' => 'Ngày mai',
'diff_tomorrow_regexp' => 'Ngày(?:\\s+mai)?(?:\\s+lúc)?',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM [năm] YYYY',
'LLL' => 'D MMMM [năm] YYYY HH:mm',
'LLLL' => 'dddd, D MMMM [năm] YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[Hôm nay lúc] LT',
'nextDay' => '[Ngày mai lúc] LT',
'nextWeek' => 'dddd [tuần tới lúc] LT',
'lastDay' => '[Hôm qua lúc] LT',
'lastWeek' => 'dddd [tuần trước lúc] LT',
'sameElse' => 'L',
],
'meridiem' => ['SA', 'CH'],
'months' => ['tháng 1', 'tháng 2', 'tháng 3', 'tháng 4', 'tháng 5', 'tháng 6', 'tháng 7', 'tháng 8', 'tháng 9', 'tháng 10', 'tháng 11', 'tháng 12'],
'months_short' => ['Th01', 'Th02', 'Th03', 'Th04', 'Th05', 'Th06', 'Th07', 'Th08', 'Th09', 'Th10', 'Th11', 'Th12'],
'weekdays' => ['chủ nhật', 'thứ hai', 'thứ ba', 'thứ tư', 'thứ năm', 'thứ sáu', 'thứ bảy'],
'weekdays_short' => ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],
'weekdays_min' => ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => [', ', ' và '],
];
src/Carbon/Lang/vi_VN.php 0000644 00000000413 14753612052 0011155 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/vi.php';
src/Carbon/Lang/vo.php 0000644 00000002534 14753612052 0010566 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'months' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
'months_short' => ['M01', 'M02', 'M03', 'M04', 'M05', 'M06', 'M07', 'M08', 'M09', 'M10', 'M11', 'M12'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY-MM-dd',
'LL' => 'YYYY MMM D',
'LLL' => 'YYYY MMMM D HH:mm',
'LLLL' => 'YYYY MMMM D, dddd HH:mm',
],
'year' => ':count yel',
'y' => ':count yel',
'a_year' => ':count yel',
'month' => ':count mul',
'm' => ':count mul',
'a_month' => ':count mul',
'week' => ':count vig',
'w' => ':count vig',
'a_week' => ':count vig',
'day' => ':count del',
'd' => ':count del',
'a_day' => ':count del',
'hour' => ':count düp',
'h' => ':count düp',
'a_hour' => ':count düp',
'minute' => ':count minut',
'min' => ':count minut',
'a_minute' => ':count minut',
'second' => ':count sekun',
's' => ':count sekun',
'a_second' => ':count sekun',
]);
src/Carbon/Lang/vun.php 0000644 00000002103 14753612052 0010742 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['utuko', 'kyiukonyi'],
'weekdays' => ['Jumapilyi', 'Jumatatuu', 'Jumanne', 'Jumatanu', 'Alhamisi', 'Ijumaa', 'Jumamosi'],
'weekdays_short' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'weekdays_min' => ['Jpi', 'Jtt', 'Jnn', 'Jtn', 'Alh', 'Iju', 'Jmo'],
'months' => ['Januari', 'Februari', 'Machi', 'Aprilyi', 'Mei', 'Junyi', 'Julyai', 'Agusti', 'Septemba', 'Oktoba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mac', 'Apr', 'Mei', 'Jun', 'Jul', 'Ago', 'Sep', 'Okt', 'Nov', 'Des'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/wa.php 0000644 00000000516 14753612052 0010547 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/wa_BE.php';
src/Carbon/Lang/wa_BE.php 0000644 00000003230 14753612052 0011111 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Djan SACRE Pablo Saratxaga pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['di djanvî', 'di fevrî', 'di måss', 'd’ avri', 'di may', 'di djun', 'di djulete', 'd’ awousse', 'di setimbe', 'd’ octôbe', 'di nôvimbe', 'di decimbe'],
'months_short' => ['dja', 'fev', 'mås', 'avr', 'may', 'djn', 'djl', 'awo', 'set', 'oct', 'nôv', 'dec'],
'weekdays' => ['dimegne', 'londi', 'mårdi', 'mierkidi', 'djudi', 'vénrdi', 'semdi'],
'weekdays_short' => ['dim', 'lon', 'mår', 'mie', 'dju', 'vén', 'sem'],
'weekdays_min' => ['dim', 'lon', 'mår', 'mie', 'dju', 'vén', 'sem'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'year' => ':count anêye',
'y' => ':count anêye',
'a_year' => ':count anêye',
'month' => ':count meûs',
'm' => ':count meûs',
'a_month' => ':count meûs',
'week' => ':count samwinne',
'w' => ':count samwinne',
'a_week' => ':count samwinne',
'day' => ':count djoû',
'd' => ':count djoû',
'a_day' => ':count djoû',
'hour' => ':count eure',
'h' => ':count eure',
'a_hour' => ':count eure',
'minute' => ':count munute',
'min' => ':count munute',
'a_minute' => ':count munute',
'second' => ':count Sigonde',
's' => ':count Sigonde',
'a_second' => ':count Sigonde',
]);
src/Carbon/Lang/wae.php 0000644 00000000517 14753612052 0010715 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/wae_CH.php';
src/Carbon/Lang/wae_CH.php 0000644 00000002205 14753612052 0011263 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Walser Translation Team ml@translate-wae.ch
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
'months' => ['Jenner', 'Hornig', 'Märze', 'Abrille', 'Meije', 'Bráčet', 'Heiwet', 'Öigšte', 'Herbštmánet', 'Wímánet', 'Wintermánet', 'Chrištmánet'],
'months_short' => ['Jen', 'Hor', 'Mär', 'Abr', 'Mei', 'Brá', 'Hei', 'Öig', 'Her', 'Wím', 'Win', 'Chr'],
'weekdays' => ['Suntag', 'Mäntag', 'Zischtag', 'Mittwuch', 'Frontag', 'Fritag', 'Samschtag'],
'weekdays_short' => ['Sun', 'Män', 'Zis', 'Mit', 'Fro', 'Fri', 'Sam'],
'weekdays_min' => ['Sun', 'Män', 'Zis', 'Mit', 'Fro', 'Fri', 'Sam'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'month' => ':count Maano', // less reliable
'm' => ':count Maano', // less reliable
'a_month' => ':count Maano', // less reliable
]);
src/Carbon/Lang/wal.php 0000644 00000000517 14753612052 0010724 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/wal_ET.php';
src/Carbon/Lang/wal_ET.php 0000644 00000002351 14753612052 0011312 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Ge'ez Frontier Foundation locales@geez.org
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['ጃንዩወሪ', 'ፌብሩወሪ', 'ማርች', 'ኤፕረል', 'ሜይ', 'ጁን', 'ጁላይ', 'ኦገስት', 'ሴፕቴምበር', 'ኦክተውበር', 'ኖቬምበር', 'ዲሴምበር'],
'months_short' => ['ጃንዩ', 'ፌብሩ', 'ማርች', 'ኤፕረ', 'ሜይ ', 'ጁን ', 'ጁላይ', 'ኦገስ', 'ሴፕቴ', 'ኦክተ', 'ኖቬም', 'ዲሴም'],
'weekdays' => ['ወጋ', 'ሳይኖ', 'ማቆሳኛ', 'አሩዋ', 'ሃሙሳ', 'አርባ', 'ቄራ'],
'weekdays_short' => ['ወጋ ', 'ሳይኖ', 'ማቆሳ', 'አሩዋ', 'ሃሙሳ', 'አርባ', 'ቄራ '],
'weekdays_min' => ['ወጋ ', 'ሳይኖ', 'ማቆሳ', 'አሩዋ', 'ሃሙሳ', 'አርባ', 'ቄራ '],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['ማለዶ', 'ቃማ'],
]);
src/Carbon/Lang/wo.php 0000644 00000000516 14753612052 0010565 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/wo_SN.php';
src/Carbon/Lang/wo_SN.php 0000644 00000002442 14753612052 0011165 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - The Debian Project Christian Perrier bubulle@debian.org
*/
return [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD.MM.YYYY',
'LL' => 'MMMM DD, YYYY',
'LLL' => 'DD MMM HH:mm',
'LLLL' => 'MMMM DD, YYYY HH:mm',
],
'months' => ['sanwiy\'e', 'feebriy\'e', 'mars', 'awril', 'me', 'suwen', 'sulet', 'uut', 'septaambar', 'oktoobar', 'nowaambar', 'desaambar'],
'months_short' => ['san', 'fee', 'mar', 'awr', 'me ', 'suw', 'sul', 'uut', 'sep', 'okt', 'now', 'des'],
'weekdays' => ['dib\'eer', 'altine', 'talaata', 'allarba', 'alxames', 'ajjuma', 'gaawu'],
'weekdays_short' => ['dib', 'alt', 'tal', 'all', 'alx', 'ajj', 'gaa'],
'weekdays_min' => ['dib', 'alt', 'tal', 'all', 'alx', 'ajj', 'gaa'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'year' => ':count at',
'month' => ':count wèr',
'week' => ':count ayubés',
'day' => ':count bés',
'hour' => ':count waxtu',
'minute' => ':count simili',
'second' => ':count saa',
];
src/Carbon/Lang/xh.php 0000644 00000000516 14753612052 0010557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/xh_ZA.php';
src/Carbon/Lang/xh_ZA.php 0000644 00000003614 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['eyoMqungu', 'eyoMdumba', 'eyoKwindla', 'uTshazimpuzi', 'uCanzibe', 'eyeSilimela', 'eyeKhala', 'eyeThupa', 'eyoMsintsi', 'eyeDwarha', 'eyeNkanga', 'eyoMnga'],
'months_short' => ['Mqu', 'Mdu', 'Kwi', 'Tsh', 'Can', 'Sil', 'Kha', 'Thu', 'Msi', 'Dwa', 'Nka', 'Mng'],
'weekdays' => ['iCawa', 'uMvulo', 'lwesiBini', 'lwesiThathu', 'ulweSine', 'lwesiHlanu', 'uMgqibelo'],
'weekdays_short' => ['Caw', 'Mvu', 'Bin', 'Tha', 'Sin', 'Hla', 'Mgq'],
'weekdays_min' => ['Caw', 'Mvu', 'Bin', 'Tha', 'Sin', 'Hla', 'Mgq'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => ':count ihlobo', // less reliable
'y' => ':count ihlobo', // less reliable
'a_year' => ':count ihlobo', // less reliable
'hour' => ':count iwotshi', // less reliable
'h' => ':count iwotshi', // less reliable
'a_hour' => ':count iwotshi', // less reliable
'minute' => ':count ingqalelo', // less reliable
'min' => ':count ingqalelo', // less reliable
'a_minute' => ':count ingqalelo', // less reliable
'second' => ':count nceda', // less reliable
's' => ':count nceda', // less reliable
'a_second' => ':count nceda', // less reliable
'month' => ':count inyanga',
'm' => ':count inyanga',
'a_month' => ':count inyanga',
'week' => ':count veki',
'w' => ':count veki',
'a_week' => ':count veki',
'day' => ':count imini',
'd' => ':count imini',
'a_day' => ':count imini',
]);
src/Carbon/Lang/xog.php 0000644 00000002134 14753612052 0010733 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['Munkyo', 'Eigulo'],
'weekdays' => ['Sabiiti', 'Balaza', 'Owokubili', 'Owokusatu', 'Olokuna', 'Olokutaanu', 'Olomukaaga'],
'weekdays_short' => ['Sabi', 'Bala', 'Kubi', 'Kusa', 'Kuna', 'Kuta', 'Muka'],
'weekdays_min' => ['Sabi', 'Bala', 'Kubi', 'Kusa', 'Kuna', 'Kuta', 'Muka'],
'months' => ['Janwaliyo', 'Febwaliyo', 'Marisi', 'Apuli', 'Maayi', 'Juuni', 'Julaayi', 'Agusito', 'Sebuttemba', 'Okitobba', 'Novemba', 'Desemba'],
'months_short' => ['Jan', 'Feb', 'Mar', 'Apu', 'Maa', 'Juu', 'Jul', 'Agu', 'Seb', 'Oki', 'Nov', 'Des'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/yav.php 0000644 00000002365 14753612052 0010743 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'meridiem' => ['kiɛmɛ́ɛm', 'kisɛ́ndɛ'],
'weekdays' => ['sɔ́ndiɛ', 'móndie', 'muányáŋmóndie', 'metúkpíápɛ', 'kúpélimetúkpiapɛ', 'feléte', 'séselé'],
'weekdays_short' => ['sd', 'md', 'mw', 'et', 'kl', 'fl', 'ss'],
'weekdays_min' => ['sd', 'md', 'mw', 'et', 'kl', 'fl', 'ss'],
'months' => ['pikítíkítie, oólí ú kutúan', 'siɛyɛ́, oóli ú kándíɛ', 'ɔnsúmbɔl, oóli ú kátátúɛ', 'mesiŋ, oóli ú kénie', 'ensil, oóli ú kátánuɛ', 'ɔsɔn', 'efute', 'pisuyú', 'imɛŋ i puɔs', 'imɛŋ i putúk,oóli ú kátíɛ', 'makandikɛ', 'pilɔndɔ́'],
'months_short' => ['o.1', 'o.2', 'o.3', 'o.4', 'o.5', 'o.6', 'o.7', 'o.8', 'o.9', 'o.10', 'o.11', 'o.12'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'D/M/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/yi.php 0000644 00000000516 14753612052 0010561 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/yi_US.php';
src/Carbon/Lang/yi_US.php 0000644 00000003700 14753612052 0011166 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - http://www.uyip.org/ Pablo Saratxaga pablo@mandrakesoft.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['יאַנואַר', 'פֿעברואַר', 'מערץ', 'אַפּריל', 'מיי', 'יוני', 'יולי', 'אויגוסט', 'סעפּטעמבער', 'אקטאבער', 'נאוועמבער', 'דעצעמבער'],
'months_short' => ['יאַנ', 'פֿעב', 'מאַר', 'אַפּר', 'מײַ ', 'יונ', 'יול', 'אױג', 'סעפּ', 'אָקט', 'נאָװ', 'דעצ'],
'weekdays' => ['זונטיק', 'מאָנטיק', 'דינסטיק', 'מיטװאָך', 'דאָנערשטיק', 'פֿרײַטיק', 'שבת'],
'weekdays_short' => ['זונ\'', 'מאָנ\'', 'דינ\'', 'מיט\'', 'דאָנ\'', 'פֿרײַ\'', 'שבת'],
'weekdays_min' => ['זונ\'', 'מאָנ\'', 'דינ\'', 'מיט\'', 'דאָנ\'', 'פֿרײַ\'', 'שבת'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => ':count יאר',
'y' => ':count יאר',
'a_year' => ':count יאר',
'month' => ':count חודש',
'm' => ':count חודש',
'a_month' => ':count חודש',
'week' => ':count וואָך',
'w' => ':count וואָך',
'a_week' => ':count וואָך',
'day' => ':count טאָג',
'd' => ':count טאָג',
'a_day' => ':count טאָג',
'hour' => ':count שעה',
'h' => ':count שעה',
'a_hour' => ':count שעה',
'minute' => ':count מינוט',
'min' => ':count מינוט',
'a_minute' => ':count מינוט',
'second' => ':count סעקונדע',
's' => ':count סעקונדע',
'a_second' => ':count סעקונדע',
]);
src/Carbon/Lang/yo.php 0000644 00000004734 14753612052 0010575 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - François B
* - Atolagbe Abisoye
*/
return [
'year' => 'ọdún :count',
'a_year' => '{1}ọdún kan|ọdún :count',
'month' => 'osù :count',
'a_month' => '{1}osù kan|osù :count',
'week' => 'ọsẹ :count',
'a_week' => '{1}ọsẹ kan|ọsẹ :count',
'day' => 'ọjọ́ :count',
'a_day' => '{1}ọjọ́ kan|ọjọ́ :count',
'hour' => 'wákati :count',
'a_hour' => '{1}wákati kan|wákati :count',
'minute' => 'ìsẹjú :count',
'a_minute' => '{1}ìsẹjú kan|ìsẹjú :count',
'second' => 'iaayá :count',
'a_second' => '{1}ìsẹjú aayá die|aayá :count',
'ago' => ':time kọjá',
'from_now' => 'ní :time',
'diff_yesterday' => 'Àna',
'diff_yesterday_regexp' => 'Àna(?:\\s+ni)?',
'diff_today' => 'Ònì',
'diff_today_regexp' => 'Ònì(?:\\s+ni)?',
'diff_tomorrow' => 'Ọ̀la',
'diff_tomorrow_regexp' => 'Ọ̀la(?:\\s+ni)?',
'formats' => [
'LT' => 'h:mm A',
'LTS' => 'h:mm:ss A',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY h:mm A',
'LLLL' => 'dddd, D MMMM YYYY h:mm A',
],
'calendar' => [
'sameDay' => '[Ònì ni] LT',
'nextDay' => '[Ọ̀la ni] LT',
'nextWeek' => 'dddd [Ọsẹ̀ tón\'bọ] [ni] LT',
'lastDay' => '[Àna ni] LT',
'lastWeek' => 'dddd [Ọsẹ̀ tólọ́] [ni] LT',
'sameElse' => 'L',
],
'ordinal' => 'ọjọ́ :number',
'months' => ['Sẹ́rẹ́', 'Èrèlè', 'Ẹrẹ̀nà', 'Ìgbé', 'Èbibi', 'Òkùdu', 'Agẹmo', 'Ògún', 'Owewe', 'Ọ̀wàrà', 'Bélú', 'Ọ̀pẹ̀̀'],
'months_short' => ['Sẹ́r', 'Èrl', 'Ẹrn', 'Ìgb', 'Èbi', 'Òkù', 'Agẹ', 'Ògú', 'Owe', 'Ọ̀wà', 'Bél', 'Ọ̀pẹ̀̀'],
'weekdays' => ['Àìkú', 'Ajé', 'Ìsẹ́gun', 'Ọjọ́rú', 'Ọjọ́bọ', 'Ẹtì', 'Àbámẹ́ta'],
'weekdays_short' => ['Àìk', 'Ajé', 'Ìsẹ́', 'Ọjr', 'Ọjb', 'Ẹtì', 'Àbá'],
'weekdays_min' => ['Àì', 'Aj', 'Ìs', 'Ọr', 'Ọb', 'Ẹt', 'Àb'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'meridiem' => ['Àárọ̀', 'Ọ̀sán'],
];
src/Carbon/Lang/yo_BJ.php 0000644 00000002516 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return array_replace_recursive(require __DIR__.'/yo.php', [
'meridiem' => ['Àárɔ̀', 'Ɔ̀sán'],
'weekdays' => ['Ɔjɔ́ Àìkú', 'Ɔjɔ́ Ajé', 'Ɔjɔ́ Ìsɛ́gun', 'Ɔjɔ́rú', 'Ɔjɔ́bɔ', 'Ɔjɔ́ Ɛtì', 'Ɔjɔ́ Àbámɛ́ta'],
'weekdays_short' => ['Àìkú', 'Ajé', 'Ìsɛ́gun', 'Ɔjɔ́rú', 'Ɔjɔ́bɔ', 'Ɛtì', 'Àbámɛ́ta'],
'weekdays_min' => ['Àìkú', 'Ajé', 'Ìsɛ́gun', 'Ɔjɔ́rú', 'Ɔjɔ́bɔ', 'Ɛtì', 'Àbámɛ́ta'],
'months' => ['Oshù Shɛ́rɛ́', 'Oshù Èrèlè', 'Oshù Ɛrɛ̀nà', 'Oshù Ìgbé', 'Oshù Ɛ̀bibi', 'Oshù Òkúdu', 'Oshù Agɛmɔ', 'Oshù Ògún', 'Oshù Owewe', 'Oshù Ɔ̀wàrà', 'Oshù Bélú', 'Oshù Ɔ̀pɛ̀'],
'months_short' => ['Shɛ́rɛ́', 'Èrèlè', 'Ɛrɛ̀nà', 'Ìgbé', 'Ɛ̀bibi', 'Òkúdu', 'Agɛmɔ', 'Ògún', 'Owewe', 'Ɔ̀wàrà', 'Bélú', 'Ɔ̀pɛ̀'],
'first_day_of_week' => 1,
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd, D MMMM YYYY HH:mm',
],
]);
src/Carbon/Lang/yo_NG.php 0000644 00000000413 14753612052 0011147 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/yo.php';
src/Carbon/Lang/yue.php 0000644 00000000517 14753612052 0010743 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/yue_HK.php';
src/Carbon/Lang/yue_HK.php 0000644 00000002000 14753612052 0011312 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/zh_HK.php', [
'formats' => [
'L' => 'YYYY年MM月DD日 dddd',
],
'months' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'meridiem' => ['上午', '下午'],
]);
src/Carbon/Lang/yue_Hans.php 0000644 00000000420 14753612052 0011705 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hans.php';
src/Carbon/Lang/yue_Hant.php 0000644 00000000420 14753612052 0011706 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hant.php';
src/Carbon/Lang/yuw.php 0000644 00000000517 14753612052 0010765 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/yuw_PG.php';
src/Carbon/Lang/yuw_PG.php 0000644 00000001770 14753612052 0011355 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Information from native speakers Hannah Sarvasy nungon.localization@gmail.com
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YY',
],
'months' => ['jenuari', 'febuari', 'mas', 'epril', 'mei', 'jun', 'julai', 'ögus', 'septemba', 'öktoba', 'nöwemba', 'diksemba'],
'months_short' => ['jen', 'feb', 'mas', 'epr', 'mei', 'jun', 'jul', 'ögu', 'sep', 'ökt', 'nöw', 'dis'],
'weekdays' => ['sönda', 'mönda', 'sinda', 'mitiwö', 'sogipbono', 'nenggo', 'söndanggie'],
'weekdays_short' => ['sön', 'mön', 'sin', 'mit', 'soi', 'nen', 'sab'],
'weekdays_min' => ['sön', 'mön', 'sin', 'mit', 'soi', 'nen', 'sab'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/zgh.php 0000644 00000007570 14753612052 0010737 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - BAKTETE Miloud
*/
return [
'year' => ':count ⵓⵙⴳⴳⵯⴰⵙ|:count ⵉⵙⴳⴳⵓⵙⴰ',
'a_year' => 'ⵓⵙⴳⴳⵯⴰⵙ|:count ⵉⵙⴳⴳⵓⵙⴰ',
'y' => ':count ⵓⵙⴳⴳⵯⴰⵙ|:count ⵉⵙⴳⴳⵓⵙⴰ',
'month' => ':count ⵡⴰⵢⵢⵓⵔ|:count ⴰⵢⵢⵓⵔⵏ',
'a_month' => 'ⵉⴷⵊ ⵡⴰⵢⵢⵓⵔ|:count ⴰⵢⵢⵓⵔⵏ',
'm' => ':count ⴰⵢⵢⵓⵔⵏ',
'week' => ':count ⵉⵎⴰⵍⴰⵙⵙ|:count ⵉⵎⴰⵍⴰⵙⵙⵏ',
'a_week' => 'ⵉⵛⵜ ⵉⵎⴰⵍⴰⵙⵙ|:count ⵉⵎⴰⵍⴰⵙⵙⵏ',
'w' => ':count ⵉⵎⴰⵍⴰⵙⵙ.',
'day' => ':count ⵡⴰⵙⵙ|:count ⵓⵙⵙⴰⵏ',
'a_day' => 'ⵉⴷⵊ ⵡⴰⵙⵙ|:count ⵓⵙⵙⴰⵏ',
'd' => ':count ⵓ',
'hour' => ':count ⵜⵙⵔⴰⴳⵜ|:count ⵜⵉⵙⵔⴰⴳⵉⵏ',
'a_hour' => 'ⵉⵛⵜ ⵜⵙⵔⴰⴳⵜ|:count ⵜⵉⵙⵔⴰⴳⵉⵏ',
'h' => ':count ⵜ',
'minute' => ':count ⵜⵓⵙⴷⵉⴷⵜ|:count ⵜⵓⵙⴷⵉⴷⵉⵏ',
'a_minute' => 'ⵉⵛⵜ ⵜⵓⵙⴷⵉⴷⵜ|:count ⵜⵓⵙⴷⵉⴷⵉⵏ',
'min' => ':count ⵜⵓⵙ',
'second' => ':count ⵜⵙⵉⵏⵜ|:count ⵜⵉⵙⵉⵏⴰ',
'a_second' => 'ⴽⵔⴰ ⵜⵉⵙⵉⵏⴰ|:count ⵜⵉⵙⵉⵏⴰ',
's' => ':count ⵜ',
'ago' => 'ⵣⴳ :time',
'from_now' => 'ⴷⴳ :time',
'after' => ':time ⴰⵡⴰⵔ',
'before' => ':time ⴷⴰⵜ',
'diff_now' => 'ⴰⴷⵡⴰⵍⵉ',
'diff_today' => 'ⴰⵙⵙ',
'diff_today_regexp' => 'ⴰⵙⵙ(?:\\s+ⴰ/ⴰⴷ)?(?:\\s+ⴳ)?',
'diff_yesterday' => 'ⴰⵙⵙⵏⵏⴰⵟ',
'diff_yesterday_regexp' => 'ⴰⵙⵙⵏⵏⴰⵟ(?:\\s+ⴳ)?',
'diff_tomorrow' => 'ⴰⵙⴽⴽⴰ',
'diff_tomorrow_regexp' => 'ⴰⵙⴽⴽⴰ(?:\\s+ⴳ)?',
'diff_before_yesterday' => 'ⴼⵔ ⵉⴹⵏⵏⴰⵟ',
'diff_after_tomorrow' => 'ⵏⴰⴼ ⵓⵙⴽⴽⴰ',
'period_recurrences' => ':count ⵜⵉⴽⴽⴰⵍ',
'period_interval' => 'ⴽⵓ :interval',
'period_start_date' => 'ⴳ :date',
'period_end_date' => 'ⵉ :date',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'DD/MM/YYYY',
'LL' => 'D MMMM YYYY',
'LLL' => 'D MMMM YYYY HH:mm',
'LLLL' => 'dddd D MMMM YYYY HH:mm',
],
'calendar' => [
'sameDay' => '[ⴰⵙⵙ ⴰ/ⴰⴷ ⴳ] LT',
'nextDay' => '[ⴰⵙⴽⴽⴰ ⴳ] LT',
'nextWeek' => 'dddd [ⴳ] LT',
'lastDay' => '[ⴰⵙⵙⵏⵏⴰⵟ ⴳ] LT',
'lastWeek' => 'dddd [ⴰⵎⴳⴳⴰⵔⵓ ⴳ] LT',
'sameElse' => 'L',
],
'meridiem' => ['ⵜⵉⴼⴰⵡⵜ', 'ⵜⴰⴷⴳⴳⵯⴰⵜ'],
'months' => ['ⵉⵏⵏⴰⵢⵔ', 'ⴱⵕⴰⵢⵕ', 'ⵎⴰⵕⵚ', 'ⵉⴱⵔⵉⵔ', 'ⵎⴰⵢⵢⵓ', 'ⵢⵓⵏⵢⵓ', 'ⵢⵓⵍⵢⵓⵣ', 'ⵖⵓⵛⵜ', 'ⵛⵓⵜⴰⵏⴱⵉⵔ', 'ⴽⵟⵓⴱⵕ', 'ⵏⵓⵡⴰⵏⴱⵉⵔ', 'ⴷⵓⵊⴰⵏⴱⵉⵔ'],
'months_short' => ['ⵉⵏⵏ', 'ⴱⵕⴰ', 'ⵎⴰⵕ', 'ⵉⴱⵔ', 'ⵎⴰⵢ', 'ⵢⵓⵏ', 'ⵢⵓⵍ', 'ⵖⵓⵛ', 'ⵛⵓⵜ', 'ⴽⵟⵓ', 'ⵏⵓⵡ', 'ⴷⵓⵊ'],
'weekdays' => ['ⵓⵙⴰⵎⴰⵙ', 'ⵡⴰⵢⵏⴰⵙ', 'ⵓⵙⵉⵏⴰⵙ', 'ⵡⴰⴽⵕⴰⵙ', 'ⵓⴽⵡⴰⵙ', 'ⵓⵙⵉⵎⵡⴰⵙ', 'ⵓⵙⵉⴹⵢⴰⵙ'],
'weekdays_short' => ['ⵓⵙⴰ', 'ⵡⴰⵢ', 'ⵓⵙⵉ', 'ⵡⴰⴽ', 'ⵓⴽⵡ', 'ⵓⵙⵉⵎ', 'ⵓⵙⵉⴹ'],
'weekdays_min' => ['ⵓⵙⴰ', 'ⵡⴰⵢ', 'ⵓⵙⵉ', 'ⵡⴰⴽ', 'ⵓⴽⵡ', 'ⵓⵙⵉⵎ', 'ⵓⵙⵉⴹ'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 1,
'list' => [', ', ' ⴷ '],
];
src/Carbon/Lang/zh.php 0000644 00000001204 14753612052 0010554 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - xuri
* - sycuato
* - bokideckonja
* - Luo Ning
* - William Yang (williamyang233)
*/
return array_merge(require __DIR__.'/zh_Hans.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY/MM/DD',
'LL' => 'YYYY年M月D日',
'LLL' => 'YYYY年M月D日 A h点mm分',
'LLLL' => 'YYYY年M月D日dddd A h点mm分',
],
]);
src/Carbon/Lang/zh_CN.php 0000644 00000001275 14753612052 0011144 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - monkeycon
* - François B
* - Jason Katz-Brown
* - Serhan Apaydın
* - Matt Johnson
* - JD Isaacks
* - Zeno Zeng
* - Chris Hemp
* - shankesgk2
*/
return array_merge(require __DIR__.'/zh.php', [
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY/MM/DD',
'LL' => 'YYYY年M月D日',
'LLL' => 'YYYY年M月D日Ah点mm分',
'LLLL' => 'YYYY年M月D日ddddAh点mm分',
],
]);
src/Carbon/Lang/zh_HK.php 0000644 00000000423 14753612052 0011140 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hant_HK.php';
src/Carbon/Lang/zh_Hans.php 0000644 00000006137 14753612052 0011537 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - monkeycon
* - François B
* - Jason Katz-Brown
* - Konstantin Konev
* - Chris Lam
* - Serhan Apaydın
* - Gary Lo
* - JD Isaacks
* - Chris Hemp
* - shankesgk2
* - Daniel Cheung (danvim)
*/
return [
'year' => ':count:optional-space年',
'y' => ':count:optional-space年',
'month' => ':count:optional-space个月',
'm' => ':count:optional-space个月',
'week' => ':count:optional-space周',
'w' => ':count:optional-space周',
'day' => ':count:optional-space天',
'd' => ':count:optional-space天',
'hour' => ':count:optional-space小时',
'h' => ':count:optional-space小时',
'minute' => ':count:optional-space分钟',
'min' => ':count:optional-space分钟',
'second' => ':count:optional-space秒',
'a_second' => '{1}几秒|]1,Inf[:count:optional-space秒',
's' => ':count:optional-space秒',
'ago' => ':time前',
'from_now' => ':time后',
'after' => ':time后',
'before' => ':time前',
'diff_now' => '现在',
'diff_today' => '今天',
'diff_yesterday' => '昨天',
'diff_tomorrow' => '明天',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY/MM/DD',
'LL' => 'YYYY年M月D日',
'LLL' => 'YYYY年M月D日 HH:mm',
'LLLL' => 'YYYY年M月D日dddd HH:mm',
],
'calendar' => [
'sameDay' => '[今天]LT',
'nextDay' => '[明天]LT',
'nextWeek' => '[下]ddddLT',
'lastDay' => '[昨天]LT',
'lastWeek' => '[上]ddddLT',
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return match ($period) {
'd', 'D', 'DDD' => $number.'日',
'M' => $number.'月',
'w', 'W' => $number.'周',
default => $number,
};
},
'meridiem' => static function ($hour, $minute) {
$time = $hour * 100 + $minute;
if ($time < 600) {
return '凌晨';
}
if ($time < 900) {
return '早上';
}
if ($time < 1130) {
return '上午';
}
if ($time < 1230) {
return '中午';
}
if ($time < 1800) {
return '下午';
}
return '晚上';
},
'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
'weekdays_short' => ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => '',
];
src/Carbon/Lang/zh_Hans_HK.php 0000644 00000000420 14753612052 0012106 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hans.php';
src/Carbon/Lang/zh_Hans_MO.php 0000644 00000000420 14753612052 0012117 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hans.php';
src/Carbon/Lang/zh_Hans_SG.php 0000644 00000000420 14753612052 0012115 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hans.php';
src/Carbon/Lang/zh_Hant.php 0000644 00000006151 14753612052 0011534 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Adam
* - monkeycon
* - François B
* - Jason Katz-Brown
* - Chris Lam
* - Serhan Apaydın
* - Gary Lo
* - JD Isaacks
* - Chris Hemp
* - Eddie
* - KID
* - shankesgk2
* - Daniel Cheung (danvim)
*/
return [
'year' => ':count:optional-space年',
'y' => ':count:optional-space年',
'month' => ':count:optional-space個月',
'm' => ':count:optional-space月',
'week' => ':count:optional-space週',
'w' => ':count:optional-space週',
'day' => ':count:optional-space天',
'd' => ':count:optional-space天',
'hour' => ':count:optional-space小時',
'h' => ':count:optional-space小時',
'minute' => ':count:optional-space分鐘',
'min' => ':count:optional-space分鐘',
'second' => ':count:optional-space秒',
'a_second' => '{1}幾秒|]1,Inf[:count:optional-space秒',
's' => ':count:optional-space秒',
'ago' => ':time前',
'from_now' => ':time後',
'after' => ':time後',
'before' => ':time前',
'diff_now' => '現在',
'diff_today' => '今天',
'diff_yesterday' => '昨天',
'diff_tomorrow' => '明天',
'formats' => [
'LT' => 'HH:mm',
'LTS' => 'HH:mm:ss',
'L' => 'YYYY/MM/DD',
'LL' => 'YYYY年M月D日',
'LLL' => 'YYYY年M月D日 HH:mm',
'LLLL' => 'YYYY年M月D日dddd HH:mm',
],
'calendar' => [
'sameDay' => '[今天] LT',
'nextDay' => '[明天] LT',
'nextWeek' => '[下]dddd LT',
'lastDay' => '[昨天] LT',
'lastWeek' => '[上]dddd LT',
'sameElse' => 'L',
],
'ordinal' => static function ($number, $period) {
return match ($period) {
'd', 'D', 'DDD' => $number.'日',
'M' => $number.'月',
'w', 'W' => $number.'周',
default => $number,
};
},
'meridiem' => static function ($hour, $minute) {
$time = $hour * 100 + $minute;
if ($time < 600) {
return '凌晨';
}
if ($time < 900) {
return '早上';
}
if ($time < 1130) {
return '上午';
}
if ($time < 1230) {
return '中午';
}
if ($time < 1800) {
return '下午';
}
return '晚上';
},
'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'months_short' => ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
'weekdays_short' => ['週日', '週一', '週二', '週三', '週四', '週五', '週六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'first_day_of_week' => 1,
'day_of_first_week_of_year' => 4,
'list' => '',
];
src/Carbon/Lang/zh_Hant_HK.php 0000644 00000000420 14753612052 0012107 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hant.php';
src/Carbon/Lang/zh_Hant_MO.php 0000644 00000000420 14753612052 0012120 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hant.php';
src/Carbon/Lang/zh_Hant_TW.php 0000644 00000000420 14753612052 0012137 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hant.php';
src/Carbon/Lang/zh_MO.php 0000644 00000000620 14753612052 0011150 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - tarunvelli
* - Eddie
* - KID
* - shankesgk2
*/
return array_replace_recursive(require __DIR__.'/zh_Hant.php', [
'after' => ':time后',
]);
src/Carbon/Lang/zh_SG.php 0000644 00000002056 14753612052 0011153 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/zh.php', [
'formats' => [
'L' => 'YYYY年MM月DD日',
],
'months' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'months_short' => ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月'],
'weekdays' => ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],
'weekdays_short' => ['日', '一', '二', '三', '四', '五', '六'],
'weekdays_min' => ['日', '一', '二', '三', '四', '五', '六'],
'day_of_first_week_of_year' => 1,
]);
src/Carbon/Lang/zh_TW.php 0000644 00000000423 14753612052 0011170 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return require __DIR__.'/zh_Hant_TW.php';
src/Carbon/Lang/zh_YUE.php 0000644 00000000730 14753612052 0011301 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - IBM Globalization Center of Competency, Yamato Software Laboratory bug-glibc-locales@gnu.org
*/
return array_replace_recursive(require __DIR__.'/zh.php', [
'formats' => [
'L' => 'YYYY-MM-DD',
],
]);
src/Carbon/Lang/zu.php 0000644 00000000516 14753612052 0010576 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Unknown default region, use the first alphabetically.
*/
return require __DIR__.'/zu_ZA.php';
src/Carbon/Lang/zu_ZA.php 0000644 00000003522 14753612052 0011170 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* Authors:
* - Zuza Software Foundation (Translate.org.za) Dwayne Bailey dwayne@translate.org.za
*/
return array_replace_recursive(require __DIR__.'/en.php', [
'formats' => [
'L' => 'DD/MM/YYYY',
],
'months' => ['Januwari', 'Februwari', 'Mashi', 'Ephreli', 'Meyi', 'Juni', 'Julayi', 'Agasti', 'Septhemba', 'Okthoba', 'Novemba', 'Disemba'],
'months_short' => ['Jan', 'Feb', 'Mas', 'Eph', 'Mey', 'Jun', 'Jul', 'Aga', 'Sep', 'Okt', 'Nov', 'Dis'],
'weekdays' => ['iSonto', 'uMsombuluko', 'uLwesibili', 'uLwesithathu', 'uLwesine', 'uLwesihlanu', 'uMgqibelo'],
'weekdays_short' => ['Son', 'Mso', 'Bil', 'Tha', 'Sin', 'Hla', 'Mgq'],
'weekdays_min' => ['Son', 'Mso', 'Bil', 'Tha', 'Sin', 'Hla', 'Mgq'],
'first_day_of_week' => 0,
'day_of_first_week_of_year' => 1,
'year' => 'kweminyaka engu-:count',
'y' => 'kweminyaka engu-:count',
'a_year' => 'kweminyaka engu-:count',
'month' => 'izinyanga ezingu-:count',
'm' => 'izinyanga ezingu-:count',
'a_month' => 'izinyanga ezingu-:count',
'week' => 'lwamasonto angu-:count',
'w' => 'lwamasonto angu-:count',
'a_week' => 'lwamasonto angu-:count',
'day' => 'ezingaba ngu-:count',
'd' => 'ezingaba ngu-:count',
'a_day' => 'ezingaba ngu-:count',
'hour' => 'amahora angu-:count',
'h' => 'amahora angu-:count',
'a_hour' => 'amahora angu-:count',
'minute' => 'ngemizuzu engu-:count',
'min' => 'ngemizuzu engu-:count',
'a_minute' => 'ngemizuzu engu-:count',
'second' => 'imizuzwana engu-:count',
's' => 'imizuzwana engu-:count',
'a_second' => 'imizuzwana engu-:count',
]);
src/Carbon/Language.php 0000644 00000014652 14753612052 0011010 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use JsonSerializable;
class Language implements JsonSerializable
{
protected static ?array $languagesNames = null;
protected static ?array $regionsNames = null;
protected string $id;
protected string $code;
protected ?string $variant = null;
protected ?string $region = null;
protected ?array $names = null;
protected ?string $isoName = null;
protected ?string $nativeName = null;
public function __construct(string $id)
{
$this->id = str_replace('-', '_', $id);
$parts = explode('_', $this->id);
$this->code = $parts[0];
if (isset($parts[1])) {
if (!preg_match('/^[A-Z]+$/', $parts[1])) {
$this->variant = $parts[1];
$parts[1] = $parts[2] ?? null;
}
if ($parts[1]) {
$this->region = $parts[1];
}
}
}
/**
* Get the list of the known languages.
*
* @return array
*/
public static function all(): array
{
static::$languagesNames ??= require __DIR__.'/List/languages.php';
return static::$languagesNames;
}
/**
* Get the list of the known regions.
*
* ⚠ ISO 3166-2 short name provided with no warranty, should not
* be used for any purpose to show official state names.
*/
public static function regions(): array
{
static::$regionsNames ??= require __DIR__.'/List/regions.php';
return static::$regionsNames;
}
/**
* Get both isoName and nativeName as an array.
*/
public function getNames(): array
{
$this->names ??= static::all()[$this->code] ?? [
'isoName' => $this->code,
'nativeName' => $this->code,
];
return $this->names;
}
/**
* Returns the original locale ID.
*/
public function getId(): string
{
return $this->id;
}
/**
* Returns the code of the locale "en"/"fr".
*/
public function getCode(): string
{
return $this->code;
}
/**
* Returns the variant code such as cyrl/latn.
*/
public function getVariant(): ?string
{
return $this->variant;
}
/**
* Returns the variant such as Cyrillic/Latin.
*/
public function getVariantName(): ?string
{
if ($this->variant === 'Latn') {
return 'Latin';
}
if ($this->variant === 'Cyrl') {
return 'Cyrillic';
}
return $this->variant;
}
/**
* Returns the region part of the locale.
*/
public function getRegion(): ?string
{
return $this->region;
}
/**
* Returns the region name for the current language.
*
* ⚠ ISO 3166-2 short name provided with no warranty, should not
* be used for any purpose to show official state names.
*/
public function getRegionName(): ?string
{
return $this->region ? (static::regions()[$this->region] ?? $this->region) : null;
}
/**
* Returns the long ISO language name.
*/
public function getFullIsoName(): string
{
$this->isoName ??= $this->getNames()['isoName'];
return $this->isoName;
}
/**
* Set the ISO language name.
*/
public function setIsoName(string $isoName): static
{
$this->isoName = $isoName;
return $this;
}
/**
* Return the full name of the language in this language.
*/
public function getFullNativeName(): string
{
$this->nativeName ??= $this->getNames()['nativeName'];
return $this->nativeName;
}
/**
* Set the name of the language in this language.
*/
public function setNativeName(string $nativeName): static
{
$this->nativeName = $nativeName;
return $this;
}
/**
* Returns the short ISO language name.
*/
public function getIsoName(): string
{
$name = $this->getFullIsoName();
return trim(strstr($name, ',', true) ?: $name);
}
/**
* Get the short name of the language in this language.
*/
public function getNativeName(): string
{
$name = $this->getFullNativeName();
return trim(strstr($name, ',', true) ?: $name);
}
/**
* Get a string with short ISO name, region in parentheses if applicable, variant in parentheses if applicable.
*/
public function getIsoDescription(): string
{
$region = $this->getRegionName();
$variant = $this->getVariantName();
return $this->getIsoName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
}
/**
* Get a string with short native name, region in parentheses if applicable, variant in parentheses if applicable.
*/
public function getNativeDescription(): string
{
$region = $this->getRegionName();
$variant = $this->getVariantName();
return $this->getNativeName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
}
/**
* Get a string with long ISO name, region in parentheses if applicable, variant in parentheses if applicable.
*/
public function getFullIsoDescription(): string
{
$region = $this->getRegionName();
$variant = $this->getVariantName();
return $this->getFullIsoName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
}
/**
* Get a string with long native name, region in parentheses if applicable, variant in parentheses if applicable.
*/
public function getFullNativeDescription(): string
{
$region = $this->getRegionName();
$variant = $this->getVariantName();
return $this->getFullNativeName().($region ? ' ('.$region.')' : '').($variant ? ' ('.$variant.')' : '');
}
/**
* Returns the original locale ID.
*/
public function __toString(): string
{
return $this->getId();
}
/**
* Get a string with short ISO name, region in parentheses if applicable, variant in parentheses if applicable.
*/
public function jsonSerialize(): string
{
return $this->getIsoDescription();
}
}
src/Carbon/Laravel/ServiceProvider.php 0000644 00000006246 14753612052 0013766 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Laravel;
use Carbon\Carbon;
use Carbon\CarbonImmutable;
use Carbon\CarbonInterval;
use Carbon\CarbonPeriod;
use Illuminate\Contracts\Events\Dispatcher as DispatcherContract;
use Illuminate\Events\Dispatcher;
use Illuminate\Events\EventDispatcher;
use Illuminate\Support\Carbon as IlluminateCarbon;
use Illuminate\Support\Facades\Date;
use Throwable;
class ServiceProvider extends \Illuminate\Support\ServiceProvider
{
/** @var callable|null */
protected $appGetter = null;
/** @var callable|null */
protected $localeGetter = null;
public function setAppGetter(?callable $appGetter): void
{
$this->appGetter = $appGetter;
}
public function setLocaleGetter(?callable $localeGetter): void
{
$this->localeGetter = $localeGetter;
}
public function boot()
{
$this->updateLocale();
if (!$this->app->bound('events')) {
return;
}
$service = $this;
$events = $this->app['events'];
if ($this->isEventDispatcher($events)) {
$events->listen(class_exists('Illuminate\Foundation\Events\LocaleUpdated') ? 'Illuminate\Foundation\Events\LocaleUpdated' : 'locale.changed', function () use ($service) {
$service->updateLocale();
});
}
}
public function updateLocale()
{
$locale = $this->getLocale();
if ($locale === null) {
return;
}
Carbon::setLocale($locale);
CarbonImmutable::setLocale($locale);
CarbonPeriod::setLocale($locale);
CarbonInterval::setLocale($locale);
if (class_exists(IlluminateCarbon::class)) {
IlluminateCarbon::setLocale($locale);
}
if (class_exists(Date::class)) {
try {
$root = Date::getFacadeRoot();
$root->setLocale($locale);
} catch (Throwable) {
// Non Carbon class in use in Date facade
}
}
}
public function register()
{
// Needed for Laravel < 5.3 compatibility
}
protected function getLocale()
{
if ($this->localeGetter) {
return ($this->localeGetter)();
}
$app = $this->getApp();
$app = $app && method_exists($app, 'getLocale')
? $app
: $this->getGlobalApp('translator');
return $app ? $app->getLocale() : null;
}
protected function getApp()
{
if ($this->appGetter) {
return ($this->appGetter)();
}
return $this->app ?? $this->getGlobalApp();
}
protected function getGlobalApp(...$args)
{
return \function_exists('app') ? \app(...$args) : null;
}
protected function isEventDispatcher($instance)
{
return $instance instanceof EventDispatcher
|| $instance instanceof Dispatcher
|| $instance instanceof DispatcherContract;
}
}
src/Carbon/List/languages.php 0000644 00000071772 14753612052 0012154 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
return [
/*
* ISO 639-2
*/
'ab' => [
'isoName' => 'Abkhazian',
'nativeName' => 'аҧсуа бызшәа, аҧсшәа',
],
'aa' => [
'isoName' => 'Afar',
'nativeName' => 'Afaraf',
],
'af' => [
'isoName' => 'Afrikaans',
'nativeName' => 'Afrikaans',
],
'ak' => [
'isoName' => 'Akan',
'nativeName' => 'Akan',
],
'sq' => [
'isoName' => 'Albanian',
'nativeName' => 'Shqip',
],
'am' => [
'isoName' => 'Amharic',
'nativeName' => 'አማርኛ',
],
'ar' => [
'isoName' => 'Arabic',
'nativeName' => 'العربية',
],
'an' => [
'isoName' => 'Aragonese',
'nativeName' => 'aragonés',
],
'hy' => [
'isoName' => 'Armenian',
'nativeName' => 'Հայերեն',
],
'as' => [
'isoName' => 'Assamese',
'nativeName' => 'অসমীয়া',
],
'av' => [
'isoName' => 'Avaric',
'nativeName' => 'авар мацӀ, магӀарул мацӀ',
],
'ae' => [
'isoName' => 'Avestan',
'nativeName' => 'avesta',
],
'ay' => [
'isoName' => 'Aymara',
'nativeName' => 'aymar aru',
],
'az' => [
'isoName' => 'Azerbaijani',
'nativeName' => 'azərbaycan dili',
],
'bm' => [
'isoName' => 'Bambara',
'nativeName' => 'bamanankan',
],
'ba' => [
'isoName' => 'Bashkir',
'nativeName' => 'башҡорт теле',
],
'eu' => [
'isoName' => 'Basque',
'nativeName' => 'euskara, euskera',
],
'be' => [
'isoName' => 'Belarusian',
'nativeName' => 'беларуская мова',
],
'bn' => [
'isoName' => 'Bengali',
'nativeName' => 'বাংলা',
],
'bh' => [
'isoName' => 'Bihari languages',
'nativeName' => 'भोजपुरी',
],
'bi' => [
'isoName' => 'Bislama',
'nativeName' => 'Bislama',
],
'bs' => [
'isoName' => 'Bosnian',
'nativeName' => 'bosanski jezik',
],
'br' => [
'isoName' => 'Breton',
'nativeName' => 'brezhoneg',
],
'bg' => [
'isoName' => 'Bulgarian',
'nativeName' => 'български език',
],
'my' => [
'isoName' => 'Burmese',
'nativeName' => 'ဗမာစာ',
],
'ca' => [
'isoName' => 'Catalan, Valencian',
'nativeName' => 'català, valencià',
],
'ch' => [
'isoName' => 'Chamorro',
'nativeName' => 'Chamoru',
],
'ce' => [
'isoName' => 'Chechen',
'nativeName' => 'нохчийн мотт',
],
'ny' => [
'isoName' => 'Chichewa, Chewa, Nyanja',
'nativeName' => 'chiCheŵa, chinyanja',
],
'zh' => [
'isoName' => 'Chinese',
'nativeName' => '中文 (Zhōngwén), 汉语, 漢語',
],
'cv' => [
'isoName' => 'Chuvash',
'nativeName' => 'чӑваш чӗлхи',
],
'kw' => [
'isoName' => 'Cornish',
'nativeName' => 'Kernewek',
],
'co' => [
'isoName' => 'Corsican',
'nativeName' => 'corsu, lingua corsa',
],
'cr' => [
'isoName' => 'Cree',
'nativeName' => 'ᓀᐦᐃᔭᐍᐏᐣ',
],
'hr' => [
'isoName' => 'Croatian',
'nativeName' => 'hrvatski jezik',
],
'cs' => [
'isoName' => 'Czech',
'nativeName' => 'čeština, český jazyk',
],
'da' => [
'isoName' => 'Danish',
'nativeName' => 'dansk',
],
'dv' => [
'isoName' => 'Divehi, Dhivehi, Maldivian',
'nativeName' => 'ދިވެހި',
],
'nl' => [
'isoName' => 'Dutch, Flemish',
'nativeName' => 'Nederlands, Vlaams',
],
'dz' => [
'isoName' => 'Dzongkha',
'nativeName' => 'རྫོང་ཁ',
],
'en' => [
'isoName' => 'English',
'nativeName' => 'English',
],
'eo' => [
'isoName' => 'Esperanto',
'nativeName' => 'Esperanto',
],
'et' => [
'isoName' => 'Estonian',
'nativeName' => 'eesti, eesti keel',
],
'ee' => [
'isoName' => 'Ewe',
'nativeName' => 'Eʋegbe',
],
'fo' => [
'isoName' => 'Faroese',
'nativeName' => 'føroyskt',
],
'fj' => [
'isoName' => 'Fijian',
'nativeName' => 'vosa Vakaviti',
],
'fi' => [
'isoName' => 'Finnish',
'nativeName' => 'suomi, suomen kieli',
],
'fr' => [
'isoName' => 'French',
'nativeName' => 'français',
],
'ff' => [
'isoName' => 'Fulah',
'nativeName' => 'Fulfulde, Pulaar, Pular',
],
'gl' => [
'isoName' => 'Galician',
'nativeName' => 'Galego',
],
'ka' => [
'isoName' => 'Georgian',
'nativeName' => 'ქართული',
],
'de' => [
'isoName' => 'German',
'nativeName' => 'Deutsch',
],
'el' => [
'isoName' => 'Greek (modern)',
'nativeName' => 'ελληνικά',
],
'gn' => [
'isoName' => 'Guaraní',
'nativeName' => 'Avañe\'ẽ',
],
'gu' => [
'isoName' => 'Gujarati',
'nativeName' => 'ગુજરાતી',
],
'ht' => [
'isoName' => 'Haitian, Haitian Creole',
'nativeName' => 'Kreyòl ayisyen',
],
'ha' => [
'isoName' => 'Hausa',
'nativeName' => '(Hausa) هَوُسَ',
],
'he' => [
'isoName' => 'Hebrew (modern)',
'nativeName' => 'עברית',
],
'hz' => [
'isoName' => 'Herero',
'nativeName' => 'Otjiherero',
],
'hi' => [
'isoName' => 'Hindi',
'nativeName' => 'हिन्दी, हिंदी',
],
'ho' => [
'isoName' => 'Hiri Motu',
'nativeName' => 'Hiri Motu',
],
'hu' => [
'isoName' => 'Hungarian',
'nativeName' => 'magyar',
],
'ia' => [
'isoName' => 'Interlingua',
'nativeName' => 'Interlingua',
],
'id' => [
'isoName' => 'Indonesian',
'nativeName' => 'Bahasa Indonesia',
],
'ie' => [
'isoName' => 'Interlingue',
'nativeName' => 'Originally called Occidental; then Interlingue after WWII',
],
'ga' => [
'isoName' => 'Irish',
'nativeName' => 'Gaeilge',
],
'ig' => [
'isoName' => 'Igbo',
'nativeName' => 'Asụsụ Igbo',
],
'ik' => [
'isoName' => 'Inupiaq',
'nativeName' => 'Iñupiaq, Iñupiatun',
],
'io' => [
'isoName' => 'Ido',
'nativeName' => 'Ido',
],
'is' => [
'isoName' => 'Icelandic',
'nativeName' => 'Íslenska',
],
'it' => [
'isoName' => 'Italian',
'nativeName' => 'Italiano',
],
'iu' => [
'isoName' => 'Inuktitut',
'nativeName' => 'ᐃᓄᒃᑎᑐᑦ',
],
'ja' => [
'isoName' => 'Japanese',
'nativeName' => '日本語 (にほんご)',
],
'jv' => [
'isoName' => 'Javanese',
'nativeName' => 'ꦧꦱꦗꦮ, Basa Jawa',
],
'kl' => [
'isoName' => 'Kalaallisut, Greenlandic',
'nativeName' => 'kalaallisut, kalaallit oqaasii',
],
'kn' => [
'isoName' => 'Kannada',
'nativeName' => 'ಕನ್ನಡ',
],
'kr' => [
'isoName' => 'Kanuri',
'nativeName' => 'Kanuri',
],
'ks' => [
'isoName' => 'Kashmiri',
'nativeName' => 'कश्मीरी, كشميري',
],
'kk' => [
'isoName' => 'Kazakh',
'nativeName' => 'қазақ тілі',
],
'km' => [
'isoName' => 'Central Khmer',
'nativeName' => 'ខ្មែរ, ខេមរភាសា, ភាសាខ្មែរ',
],
'ki' => [
'isoName' => 'Kikuyu, Gikuyu',
'nativeName' => 'Gĩkũyũ',
],
'rw' => [
'isoName' => 'Kinyarwanda',
'nativeName' => 'Ikinyarwanda',
],
'ky' => [
'isoName' => 'Kirghiz, Kyrgyz',
'nativeName' => 'Кыргызча, Кыргыз тили',
],
'kv' => [
'isoName' => 'Komi',
'nativeName' => 'коми кыв',
],
'kg' => [
'isoName' => 'Kongo',
'nativeName' => 'Kikongo',
],
'ko' => [
'isoName' => 'Korean',
'nativeName' => '한국어',
],
'ku' => [
'isoName' => 'Kurdish',
'nativeName' => 'Kurdî, کوردی',
],
'kj' => [
'isoName' => 'Kuanyama, Kwanyama',
'nativeName' => 'Kuanyama',
],
'la' => [
'isoName' => 'Latin',
'nativeName' => 'latine, lingua latina',
],
'lb' => [
'isoName' => 'Luxembourgish, Letzeburgesch',
'nativeName' => 'Lëtzebuergesch',
],
'lg' => [
'isoName' => 'Ganda',
'nativeName' => 'Luganda',
],
'li' => [
'isoName' => 'Limburgan, Limburger, Limburgish',
'nativeName' => 'Limburgs',
],
'ln' => [
'isoName' => 'Lingala',
'nativeName' => 'Lingála',
],
'lo' => [
'isoName' => 'Lao',
'nativeName' => 'ພາສາລາວ',
],
'lt' => [
'isoName' => 'Lithuanian',
'nativeName' => 'lietuvių kalba',
],
'lu' => [
'isoName' => 'Luba-Katanga',
'nativeName' => 'Kiluba',
],
'lv' => [
'isoName' => 'Latvian',
'nativeName' => 'latviešu valoda',
],
'gv' => [
'isoName' => 'Manx',
'nativeName' => 'Gaelg, Gailck',
],
'mk' => [
'isoName' => 'Macedonian',
'nativeName' => 'македонски јазик',
],
'mg' => [
'isoName' => 'Malagasy',
'nativeName' => 'fiteny malagasy',
],
'ms' => [
'isoName' => 'Malay',
'nativeName' => 'Bahasa Melayu, بهاس ملايو',
],
'ml' => [
'isoName' => 'Malayalam',
'nativeName' => 'മലയാളം',
],
'mt' => [
'isoName' => 'Maltese',
'nativeName' => 'Malti',
],
'mi' => [
'isoName' => 'Maori',
'nativeName' => 'te reo Māori',
],
'mr' => [
'isoName' => 'Marathi',
'nativeName' => 'मराठी',
],
'mh' => [
'isoName' => 'Marshallese',
'nativeName' => 'Kajin M̧ajeļ',
],
'mn' => [
'isoName' => 'Mongolian',
'nativeName' => 'Монгол хэл',
],
'na' => [
'isoName' => 'Nauru',
'nativeName' => 'Dorerin Naoero',
],
'nv' => [
'isoName' => 'Navajo, Navaho',
'nativeName' => 'Diné bizaad',
],
'nd' => [
'isoName' => 'North Ndebele',
'nativeName' => 'isiNdebele',
],
'ne' => [
'isoName' => 'Nepali',
'nativeName' => 'नेपाली',
],
'ng' => [
'isoName' => 'Ndonga',
'nativeName' => 'Owambo',
],
'nb' => [
'isoName' => 'Norwegian Bokmål',
'nativeName' => 'Norsk Bokmål',
],
'nn' => [
'isoName' => 'Norwegian Nynorsk',
'nativeName' => 'Norsk Nynorsk',
],
'no' => [
'isoName' => 'Norwegian',
'nativeName' => 'Norsk',
],
'ii' => [
'isoName' => 'Sichuan Yi, Nuosu',
'nativeName' => 'ꆈꌠ꒿ Nuosuhxop',
],
'nr' => [
'isoName' => 'South Ndebele',
'nativeName' => 'isiNdebele',
],
'oc' => [
'isoName' => 'Occitan',
'nativeName' => 'occitan, lenga d\'òc',
],
'oj' => [
'isoName' => 'Ojibwa',
'nativeName' => 'ᐊᓂᔑᓈᐯᒧᐎᓐ',
],
'cu' => [
'isoName' => 'Church Slavic, Church Slavonic, Old Church Slavonic, Old Slavonic, Old Bulgarian',
'nativeName' => 'ѩзыкъ словѣньскъ',
],
'om' => [
'isoName' => 'Oromo',
'nativeName' => 'Afaan Oromoo',
],
'or' => [
'isoName' => 'Oriya',
'nativeName' => 'ଓଡ଼ିଆ',
],
'os' => [
'isoName' => 'Ossetian, Ossetic',
'nativeName' => 'ирон æвзаг',
],
'pa' => [
'isoName' => 'Panjabi, Punjabi',
'nativeName' => 'ਪੰਜਾਬੀ',
],
'pi' => [
'isoName' => 'Pali',
'nativeName' => 'पाऴि',
],
'fa' => [
'isoName' => 'Persian',
'nativeName' => 'فارسی',
],
'pl' => [
'isoName' => 'Polish',
'nativeName' => 'język polski, polszczyzna',
],
'ps' => [
'isoName' => 'Pashto, Pushto',
'nativeName' => 'پښتو',
],
'pt' => [
'isoName' => 'Portuguese',
'nativeName' => 'Português',
],
'qu' => [
'isoName' => 'Quechua',
'nativeName' => 'Runa Simi, Kichwa',
],
'rm' => [
'isoName' => 'Romansh',
'nativeName' => 'Rumantsch Grischun',
],
'rn' => [
'isoName' => 'Rundi',
'nativeName' => 'Ikirundi',
],
'ro' => [
'isoName' => 'Romanian, Moldavian, Moldovan',
'nativeName' => 'Română',
],
'ru' => [
'isoName' => 'Russian',
'nativeName' => 'русский',
],
'sa' => [
'isoName' => 'Sanskrit',
'nativeName' => 'संस्कृतम्',
],
'sc' => [
'isoName' => 'Sardinian',
'nativeName' => 'sardu',
],
'sd' => [
'isoName' => 'Sindhi',
'nativeName' => 'सिन्धी, سنڌي، سندھی',
],
'se' => [
'isoName' => 'Northern Sami',
'nativeName' => 'Davvisámegiella',
],
'sm' => [
'isoName' => 'Samoan',
'nativeName' => 'gagana fa\'a Samoa',
],
'sg' => [
'isoName' => 'Sango',
'nativeName' => 'yângâ tî sängö',
],
'sr' => [
'isoName' => 'Serbian',
'nativeName' => 'српски језик',
],
'gd' => [
'isoName' => 'Gaelic, Scottish Gaelic',
'nativeName' => 'Gàidhlig',
],
'sn' => [
'isoName' => 'Shona',
'nativeName' => 'chiShona',
],
'si' => [
'isoName' => 'Sinhala, Sinhalese',
'nativeName' => 'සිංහල',
],
'sk' => [
'isoName' => 'Slovak',
'nativeName' => 'Slovenčina, Slovenský Jazyk',
],
'sl' => [
'isoName' => 'Slovene',
'nativeName' => 'Slovenski Jezik, Slovenščina',
],
'so' => [
'isoName' => 'Somali',
'nativeName' => 'Soomaaliga, af Soomaali',
],
'st' => [
'isoName' => 'Southern Sotho',
'nativeName' => 'Sesotho',
],
'es' => [
'isoName' => 'Spanish, Castilian',
'nativeName' => 'Español',
],
'su' => [
'isoName' => 'Sundanese',
'nativeName' => 'Basa Sunda',
],
'sw' => [
'isoName' => 'Swahili',
'nativeName' => 'Kiswahili',
],
'ss' => [
'isoName' => 'Swati',
'nativeName' => 'SiSwati',
],
'sv' => [
'isoName' => 'Swedish',
'nativeName' => 'Svenska',
],
'ta' => [
'isoName' => 'Tamil',
'nativeName' => 'தமிழ்',
],
'te' => [
'isoName' => 'Telugu',
'nativeName' => 'తెలుగు',
],
'tg' => [
'isoName' => 'Tajik',
'nativeName' => 'тоҷикӣ, toçikī, تاجیکی',
],
'th' => [
'isoName' => 'Thai',
'nativeName' => 'ไทย',
],
'ti' => [
'isoName' => 'Tigrinya',
'nativeName' => 'ትግርኛ',
],
'bo' => [
'isoName' => 'Tibetan',
'nativeName' => 'བོད་ཡིག',
],
'tk' => [
'isoName' => 'Turkmen',
'nativeName' => 'Türkmen, Түркмен',
],
'tl' => [
'isoName' => 'Tagalog',
'nativeName' => 'Wikang Tagalog',
],
'tn' => [
'isoName' => 'Tswana',
'nativeName' => 'Setswana',
],
'to' => [
'isoName' => 'Tongan (Tonga Islands)',
'nativeName' => 'Faka Tonga',
],
'tr' => [
'isoName' => 'Turkish',
'nativeName' => 'Türkçe',
],
'ts' => [
'isoName' => 'Tsonga',
'nativeName' => 'Xitsonga',
],
'tt' => [
'isoName' => 'Tatar',
'nativeName' => 'татар теле, tatar tele',
],
'tw' => [
'isoName' => 'Twi',
'nativeName' => 'Twi',
],
'ty' => [
'isoName' => 'Tahitian',
'nativeName' => 'Reo Tahiti',
],
'ug' => [
'isoName' => 'Uighur, Uyghur',
'nativeName' => 'Uyƣurqə, ئۇيغۇرچ',
],
'uk' => [
'isoName' => 'Ukrainian',
'nativeName' => 'Українська',
],
'ur' => [
'isoName' => 'Urdu',
'nativeName' => 'اردو',
],
'uz' => [
'isoName' => 'Uzbek',
'nativeName' => 'Oʻzbek, Ўзбек, أۇزبېك',
],
've' => [
'isoName' => 'Venda',
'nativeName' => 'Tshivenḓa',
],
'vi' => [
'isoName' => 'Vietnamese',
'nativeName' => 'Tiếng Việt',
],
'vo' => [
'isoName' => 'Volapük',
'nativeName' => 'Volapük',
],
'wa' => [
'isoName' => 'Walloon',
'nativeName' => 'Walon',
],
'cy' => [
'isoName' => 'Welsh',
'nativeName' => 'Cymraeg',
],
'wo' => [
'isoName' => 'Wolof',
'nativeName' => 'Wollof',
],
'fy' => [
'isoName' => 'Western Frisian',
'nativeName' => 'Frysk',
],
'xh' => [
'isoName' => 'Xhosa',
'nativeName' => 'isiXhosa',
],
'yi' => [
'isoName' => 'Yiddish',
'nativeName' => 'ייִדיש',
],
'yo' => [
'isoName' => 'Yoruba',
'nativeName' => 'Yorùbá',
],
'za' => [
'isoName' => 'Zhuang, Chuang',
'nativeName' => 'Saɯ cueŋƅ, Saw cuengh',
],
'zu' => [
'isoName' => 'Zulu',
'nativeName' => 'isiZulu',
],
/*
* Add ISO 639-3 languages available in Carbon
*/
'agq' => [
'isoName' => 'Aghem',
'nativeName' => 'Aghem',
],
'agr' => [
'isoName' => 'Aguaruna',
'nativeName' => 'Aguaruna',
],
'anp' => [
'isoName' => 'Angika',
'nativeName' => 'Angika',
],
'asa' => [
'isoName' => 'Asu',
'nativeName' => 'Asu',
],
'ast' => [
'isoName' => 'Asturian',
'nativeName' => 'Asturian',
],
'ayc' => [
'isoName' => 'Southern Aymara',
'nativeName' => 'Southern Aymara',
],
'bas' => [
'isoName' => 'Basaa',
'nativeName' => 'Basaa',
],
'bem' => [
'isoName' => 'Bemba',
'nativeName' => 'Bemba',
],
'bez' => [
'isoName' => 'Bena',
'nativeName' => 'Bena',
],
'bhb' => [
'isoName' => 'Bhili',
'nativeName' => 'Bhili',
],
'bho' => [
'isoName' => 'Bhojpuri',
'nativeName' => 'Bhojpuri',
],
'brx' => [
'isoName' => 'Bodo',
'nativeName' => 'Bodo',
],
'byn' => [
'isoName' => 'Bilin',
'nativeName' => 'Bilin',
],
'ccp' => [
'isoName' => 'Chakma',
'nativeName' => 'Chakma',
],
'cgg' => [
'isoName' => 'Chiga',
'nativeName' => 'Chiga',
],
'chr' => [
'isoName' => 'Cherokee',
'nativeName' => 'Cherokee',
],
'cmn' => [
'isoName' => 'Chinese',
'nativeName' => 'Chinese',
],
'crh' => [
'isoName' => 'Crimean Turkish',
'nativeName' => 'Crimean Turkish',
],
'csb' => [
'isoName' => 'Kashubian',
'nativeName' => 'Kashubian',
],
'dav' => [
'isoName' => 'Taita',
'nativeName' => 'Taita',
],
'dje' => [
'isoName' => 'Zarma',
'nativeName' => 'Zarma',
],
'doi' => [
'isoName' => 'Dogri (macrolanguage)',
'nativeName' => 'Dogri (macrolanguage)',
],
'dsb' => [
'isoName' => 'Lower Sorbian',
'nativeName' => 'Lower Sorbian',
],
'dua' => [
'isoName' => 'Duala',
'nativeName' => 'Duala',
],
'dyo' => [
'isoName' => 'Jola-Fonyi',
'nativeName' => 'Jola-Fonyi',
],
'ebu' => [
'isoName' => 'Embu',
'nativeName' => 'Embu',
],
'ewo' => [
'isoName' => 'Ewondo',
'nativeName' => 'Ewondo',
],
'fil' => [
'isoName' => 'Filipino',
'nativeName' => 'Filipino',
],
'fur' => [
'isoName' => 'Friulian',
'nativeName' => 'Friulian',
],
'gez' => [
'isoName' => 'Geez',
'nativeName' => 'Geez',
],
'gom' => [
'isoName' => 'Konkani, Goan',
'nativeName' => 'ಕೊಂಕಣಿ',
],
'gsw' => [
'isoName' => 'Swiss German',
'nativeName' => 'Swiss German',
],
'guz' => [
'isoName' => 'Gusii',
'nativeName' => 'Gusii',
],
'hak' => [
'isoName' => 'Hakka Chinese',
'nativeName' => 'Hakka Chinese',
],
'haw' => [
'isoName' => 'Hawaiian',
'nativeName' => 'Hawaiian',
],
'hif' => [
'isoName' => 'Fiji Hindi',
'nativeName' => 'Fiji Hindi',
],
'hne' => [
'isoName' => 'Chhattisgarhi',
'nativeName' => 'Chhattisgarhi',
],
'hsb' => [
'isoName' => 'Upper Sorbian',
'nativeName' => 'Upper Sorbian',
],
'jgo' => [
'isoName' => 'Ngomba',
'nativeName' => 'Ngomba',
],
'jmc' => [
'isoName' => 'Machame',
'nativeName' => 'Machame',
],
'kab' => [
'isoName' => 'Kabyle',
'nativeName' => 'Kabyle',
],
'kam' => [
'isoName' => 'Kamba',
'nativeName' => 'Kamba',
],
'kde' => [
'isoName' => 'Makonde',
'nativeName' => 'Makonde',
],
'kea' => [
'isoName' => 'Kabuverdianu',
'nativeName' => 'Kabuverdianu',
],
'khq' => [
'isoName' => 'Koyra Chiini',
'nativeName' => 'Koyra Chiini',
],
'kkj' => [
'isoName' => 'Kako',
'nativeName' => 'Kako',
],
'kln' => [
'isoName' => 'Kalenjin',
'nativeName' => 'Kalenjin',
],
'kok' => [
'isoName' => 'Konkani',
'nativeName' => 'Konkani',
],
'ksb' => [
'isoName' => 'Shambala',
'nativeName' => 'Shambala',
],
'ksf' => [
'isoName' => 'Bafia',
'nativeName' => 'Bafia',
],
'ksh' => [
'isoName' => 'Colognian',
'nativeName' => 'Colognian',
],
'lag' => [
'isoName' => 'Langi',
'nativeName' => 'Langi',
],
'lij' => [
'isoName' => 'Ligurian',
'nativeName' => 'Ligurian',
],
'lkt' => [
'isoName' => 'Lakota',
'nativeName' => 'Lakota',
],
'lrc' => [
'isoName' => 'Northern Luri',
'nativeName' => 'Northern Luri',
],
'luo' => [
'isoName' => 'Luo',
'nativeName' => 'Luo',
],
'luy' => [
'isoName' => 'Luyia',
'nativeName' => 'Luyia',
],
'lzh' => [
'isoName' => 'Literary Chinese',
'nativeName' => 'Literary Chinese',
],
'mag' => [
'isoName' => 'Magahi',
'nativeName' => 'Magahi',
],
'mai' => [
'isoName' => 'Maithili',
'nativeName' => 'Maithili',
],
'mas' => [
'isoName' => 'Masai',
'nativeName' => 'Masai',
],
'mer' => [
'isoName' => 'Meru',
'nativeName' => 'Meru',
],
'mfe' => [
'isoName' => 'Morisyen',
'nativeName' => 'Morisyen',
],
'mgh' => [
'isoName' => 'Makhuwa-Meetto',
'nativeName' => 'Makhuwa-Meetto',
],
'mgo' => [
'isoName' => 'Metaʼ',
'nativeName' => 'Metaʼ',
],
'mhr' => [
'isoName' => 'Eastern Mari',
'nativeName' => 'Eastern Mari',
],
'miq' => [
'isoName' => 'Mískito',
'nativeName' => 'Mískito',
],
'mjw' => [
'isoName' => 'Karbi',
'nativeName' => 'Karbi',
],
'mni' => [
'isoName' => 'Manipuri',
'nativeName' => 'Manipuri',
],
'mua' => [
'isoName' => 'Mundang',
'nativeName' => 'Mundang',
],
'mzn' => [
'isoName' => 'Mazanderani',
'nativeName' => 'Mazanderani',
],
'nan' => [
'isoName' => 'Min Nan Chinese',
'nativeName' => 'Min Nan Chinese',
],
'naq' => [
'isoName' => 'Nama',
'nativeName' => 'Nama',
],
'nds' => [
'isoName' => 'Low German',
'nativeName' => 'Low German',
],
'nhn' => [
'isoName' => 'Central Nahuatl',
'nativeName' => 'Central Nahuatl',
],
'niu' => [
'isoName' => 'Niuean',
'nativeName' => 'Niuean',
],
'nmg' => [
'isoName' => 'Kwasio',
'nativeName' => 'Kwasio',
],
'nnh' => [
'isoName' => 'Ngiemboon',
'nativeName' => 'Ngiemboon',
],
'nso' => [
'isoName' => 'Northern Sotho',
'nativeName' => 'Northern Sotho',
],
'nus' => [
'isoName' => 'Nuer',
'nativeName' => 'Nuer',
],
'nyn' => [
'isoName' => 'Nyankole',
'nativeName' => 'Nyankole',
],
'pap' => [
'isoName' => 'Papiamento',
'nativeName' => 'Papiamento',
],
'prg' => [
'isoName' => 'Prussian',
'nativeName' => 'Prussian',
],
'quz' => [
'isoName' => 'Cusco Quechua',
'nativeName' => 'Cusco Quechua',
],
'raj' => [
'isoName' => 'Rajasthani',
'nativeName' => 'Rajasthani',
],
'rof' => [
'isoName' => 'Rombo',
'nativeName' => 'Rombo',
],
'rwk' => [
'isoName' => 'Rwa',
'nativeName' => 'Rwa',
],
'sah' => [
'isoName' => 'Sakha',
'nativeName' => 'Sakha',
],
'saq' => [
'isoName' => 'Samburu',
'nativeName' => 'Samburu',
],
'sat' => [
'isoName' => 'Santali',
'nativeName' => 'Santali',
],
'sbp' => [
'isoName' => 'Sangu',
'nativeName' => 'Sangu',
],
'scr' => [
'isoName' => 'Serbo Croatian',
'nativeName' => 'Serbo Croatian',
],
'seh' => [
'isoName' => 'Sena',
'nativeName' => 'Sena',
],
'ses' => [
'isoName' => 'Koyraboro Senni',
'nativeName' => 'Koyraboro Senni',
],
'sgs' => [
'isoName' => 'Samogitian',
'nativeName' => 'Samogitian',
],
'shi' => [
'isoName' => 'Tachelhit',
'nativeName' => 'Tachelhit',
],
'shn' => [
'isoName' => 'Shan',
'nativeName' => 'Shan',
],
'shs' => [
'isoName' => 'Shuswap',
'nativeName' => 'Shuswap',
],
'sid' => [
'isoName' => 'Sidamo',
'nativeName' => 'Sidamo',
],
'smn' => [
'isoName' => 'Inari Sami',
'nativeName' => 'Inari Sami',
],
'szl' => [
'isoName' => 'Silesian',
'nativeName' => 'Silesian',
],
'tcy' => [
'isoName' => 'Tulu',
'nativeName' => 'Tulu',
],
'teo' => [
'isoName' => 'Teso',
'nativeName' => 'Teso',
],
'tet' => [
'isoName' => 'Tetum',
'nativeName' => 'Tetum',
],
'the' => [
'isoName' => 'Chitwania Tharu',
'nativeName' => 'Chitwania Tharu',
],
'tig' => [
'isoName' => 'Tigre',
'nativeName' => 'Tigre',
],
'tlh' => [
'isoName' => 'Klingon',
'nativeName' => 'tlhIngan Hol',
],
'tpi' => [
'isoName' => 'Tok Pisin',
'nativeName' => 'Tok Pisin',
],
'twq' => [
'isoName' => 'Tasawaq',
'nativeName' => 'Tasawaq',
],
'tzl' => [
'isoName' => 'Talossan',
'nativeName' => 'Talossan',
],
'tzm' => [
'isoName' => 'Tamazight, Central Atlas',
'nativeName' => 'ⵜⵎⴰⵣⵉⵖⵜ',
],
'unm' => [
'isoName' => 'Unami',
'nativeName' => 'Unami',
],
'vai' => [
'isoName' => 'Vai',
'nativeName' => 'Vai',
],
'vun' => [
'isoName' => 'Vunjo',
'nativeName' => 'Vunjo',
],
'wae' => [
'isoName' => 'Walser',
'nativeName' => 'Walser',
],
'wal' => [
'isoName' => 'Wolaytta',
'nativeName' => 'Wolaytta',
],
'xog' => [
'isoName' => 'Soga',
'nativeName' => 'Soga',
],
'yav' => [
'isoName' => 'Yangben',
'nativeName' => 'Yangben',
],
'yue' => [
'isoName' => 'Cantonese',
'nativeName' => 'Cantonese',
],
'yuw' => [
'isoName' => 'Yau (Morobe Province)',
'nativeName' => 'Yau (Morobe Province)',
],
'zgh' => [
'isoName' => 'Standard Moroccan Tamazight',
'nativeName' => 'Standard Moroccan Tamazight',
],
];
src/Carbon/List/regions.php 0000644 00000020200 14753612052 0011630 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
/*
* ISO 3166-2 short names.
*
* ⚠ Provided with No Warranty
*
* This list has no official value, and it's using short name, i.e. the first column of
* https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes
*
* Without the extra parenthesis unless a particular ambiguity in the list.
*
* For instance:
* - Falkland Islands and Malvinas both to FK, but we keep only the first for brevity and
* because there is no ambiguity in the list to justify longer name.
* - For Sint Maarten/Saint Martin not to have any confusion between FM and SX codes that
* are on the same island and so to be clear it's not referring to the whole island,
* south (dutch-speaking) and north (french-speaking) parentheses are kept for disambiguation.
* - For Virgin Islands, that can refer to either VG or VI, parentheses are also kept for
* disambiguation.
*
* We won't take into consideration any change request in this list unless there is an update
* in ISO 3166-2 itself that we need to align to.
*
* It's a purely geographical helper, state sovereignty is out of scope, for political
* complains you should address them directly to https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes
*
* Anyone needing official state names (such as the second column of the wikipedia page above)
* should seek for another tool, this list is not meant to provide long names.
*/
return [
'AD' => 'Andorra',
'AE' => 'United Arab Emirates',
'AF' => 'Afghanistan',
'AG' => 'Antigua and Barbuda',
'AI' => 'Anguilla',
'AL' => 'Albania',
'AM' => 'Armenia',
'AO' => 'Angola',
'AQ' => 'Antarctica',
'AR' => 'Argentina',
'AS' => 'American Samoa',
'AT' => 'Austria',
'AU' => 'Australia',
'AW' => 'Aruba',
'AX' => 'Åland Islands',
'AZ' => 'Azerbaijan',
'BA' => 'Bosnia and Herzegovina',
'BB' => 'Barbados',
'BD' => 'Bangladesh',
'BE' => 'Belgium',
'BF' => 'Burkina Faso',
'BG' => 'Bulgaria',
'BH' => 'Bahrain',
'BI' => 'Burundi',
'BJ' => 'Benin',
'BL' => 'Saint Barthélemy',
'BM' => 'Bermuda',
'BN' => 'Brunei Darussalam',
'BO' => 'Bolivia',
'BQ' => 'Bonaire, Sint Eustatius and Saba',
'BR' => 'Brazil',
'BS' => 'Bahamas',
'BT' => 'Bhutan',
'BV' => 'Bouvet Island',
'BW' => 'Botswana',
'BY' => 'Belarus',
'BZ' => 'Belize',
'CA' => 'Canada',
'CC' => 'Cocos (Keeling) Islands',
'CD' => 'Congo, Democratic Republic of the',
'CF' => 'Central African Republic',
'CG' => 'Congo',
'CH' => 'Switzerland',
'CI' => 'Côte d\'Ivoire',
'CK' => 'Cook Islands',
'CL' => 'Chile',
'CM' => 'Cameroon',
'CN' => 'China',
'CO' => 'Colombia',
'CR' => 'Costa Rica',
'CU' => 'Cuba',
'CV' => 'Cabo Verde',
'CW' => 'Curaçao',
'CX' => 'Christmas Island',
'CY' => 'Cyprus',
'CZ' => 'Czechia',
'DE' => 'Germany',
'DJ' => 'Djibouti',
'DK' => 'Denmark',
'DM' => 'Dominica',
'DO' => 'Dominican Republic',
'DZ' => 'Algeria',
'EC' => 'Ecuador',
'EE' => 'Estonia',
'EG' => 'Egypt',
'EH' => 'Western Sahara',
'ER' => 'Eritrea',
'ES' => 'Spain',
'ET' => 'Ethiopia',
'FI' => 'Finland',
'FJ' => 'Fiji',
'FK' => 'Falkland Islands',
'FM' => 'Micronesia',
'FO' => 'Faroe Islands',
'FR' => 'France',
'GA' => 'Gabon',
'GB' => 'United Kingdom of Great Britain and Northern Ireland',
'GD' => 'Grenada',
'GE' => 'Georgia',
'GF' => 'French Guiana',
'GG' => 'Guernsey',
'GH' => 'Ghana',
'GI' => 'Gibraltar',
'GL' => 'Greenland',
'GM' => 'Gambia',
'GN' => 'Guinea',
'GP' => 'Guadeloupe',
'GQ' => 'Equatorial Guinea',
'GR' => 'Greece',
'GS' => 'South Georgia and the South Sandwich Islands',
'GT' => 'Guatemala',
'GU' => 'Guam',
'GW' => 'Guinea-Bissau',
'GY' => 'Guyana',
'HK' => 'Hong Kong',
'HM' => 'Heard Island and McDonald Islands',
'HN' => 'Honduras',
'HR' => 'Croatia',
'HT' => 'Haiti',
'HU' => 'Hungary',
'ID' => 'Indonesia',
'IE' => 'Ireland',
'IL' => 'Israel',
'IM' => 'Isle of Man',
'IN' => 'India',
'IO' => 'British Indian Ocean Territory',
'IQ' => 'Iraq',
'IR' => 'Iran',
'IS' => 'Iceland',
'IT' => 'Italy',
'JE' => 'Jersey',
'JM' => 'Jamaica',
'JO' => 'Jordan',
'JP' => 'Japan',
'KE' => 'Kenya',
'KG' => 'Kyrgyzstan',
'KH' => 'Cambodia',
'KI' => 'Kiribati',
'KM' => 'Comoros',
'KN' => 'Saint Kitts and Nevis',
'KP' => 'Korea (Democratic People\'s Republic of)',
'KR' => 'Korea, Republic of',
'KW' => 'Kuwait',
'KY' => 'Cayman Islands',
'KZ' => 'Kazakhstan',
'LA' => 'Lao People\'s Democratic Republic',
'LB' => 'Lebanon',
'LC' => 'Saint Lucia',
'LI' => 'Liechtenstein',
'LK' => 'Sri Lanka',
'LR' => 'Liberia',
'LS' => 'Lesotho',
'LT' => 'Lithuania',
'LU' => 'Luxembourg',
'LV' => 'Latvia',
'LY' => 'Libya',
'MA' => 'Morocco',
'MC' => 'Monaco',
'MD' => 'Moldova',
'ME' => 'Montenegro',
'MF' => 'Saint Martin (French part)',
'MG' => 'Madagascar',
'MH' => 'Marshall Islands',
'MK' => 'North Macedonia',
'ML' => 'Mali',
'MM' => 'Myanmar',
'MN' => 'Mongolia',
'MO' => 'Macao',
'MP' => 'Northern Mariana Islands',
'MQ' => 'Martinique',
'MR' => 'Mauritania',
'MS' => 'Montserrat',
'MT' => 'Malta',
'MU' => 'Mauritius',
'MV' => 'Maldives',
'MW' => 'Malawi',
'MX' => 'Mexico',
'MY' => 'Malaysia',
'MZ' => 'Mozambique',
'NA' => 'Namibia',
'NC' => 'New Caledonia',
'NE' => 'Niger',
'NF' => 'Norfolk Island',
'NG' => 'Nigeria',
'NI' => 'Nicaragua',
'NL' => 'Netherlands',
'NO' => 'Norway',
'NP' => 'Nepal',
'NR' => 'Nauru',
'NU' => 'Niue',
'NZ' => 'New Zealand',
'OM' => 'Oman',
'PA' => 'Panama',
'PE' => 'Peru',
'PF' => 'French Polynesia',
'PG' => 'Papua New Guinea',
'PH' => 'Philippines',
'PK' => 'Pakistan',
'PL' => 'Poland',
'PM' => 'Saint Pierre and Miquelon',
'PN' => 'Pitcairn',
'PR' => 'Puerto Rico',
'PS' => 'Palestine',
'PT' => 'Portugal',
'PW' => 'Palau',
'PY' => 'Paraguay',
'QA' => 'Qatar',
'RE' => 'Réunion',
'RO' => 'Romania',
'RS' => 'Serbia',
'RU' => 'Russian Federation',
'RW' => 'Rwanda',
'SA' => 'Saudi Arabia',
'SB' => 'Solomon Islands',
'SC' => 'Seychelles',
'SD' => 'Sudan',
'SE' => 'Sweden',
'SG' => 'Singapore',
'SH' => 'Saint Helena, Ascension and Tristan da Cunha',
'SI' => 'Slovenia',
'SJ' => 'Svalbard and Jan Mayen',
'SK' => 'Slovakia',
'SL' => 'Sierra Leone',
'SM' => 'San Marino',
'SN' => 'Senegal',
'SO' => 'Somalia',
'SR' => 'Suriname',
'SS' => 'South Sudan',
'ST' => 'Sao Tome and Principe',
'SV' => 'El Salvador',
'SX' => 'Sint Maarten (Dutch part)',
'SY' => 'Syrian Arab Republic',
'SZ' => 'Eswatini',
'TC' => 'Turks and Caicos Islands',
'TD' => 'Chad',
'TF' => 'French Southern Territories',
'TG' => 'Togo',
'TH' => 'Thailand',
'TJ' => 'Tajikistan',
'TK' => 'Tokelau',
'TL' => 'Timor-Leste',
'TM' => 'Turkmenistan',
'TN' => 'Tunisia',
'TO' => 'Tonga',
'TR' => 'Turkey',
'TT' => 'Trinidad and Tobago',
'TV' => 'Tuvalu',
'TW' => 'Taiwan',
'TZ' => 'Tanzania',
'UA' => 'Ukraine',
'UG' => 'Uganda',
'UM' => 'United States Minor Outlying Islands',
'US' => 'United States of America',
'UY' => 'Uruguay',
'UZ' => 'Uzbekistan',
'VA' => 'Holy See',
'VC' => 'Saint Vincent and the Grenadines',
'VE' => 'Venezuela',
'VG' => 'Virgin Islands (British)',
'VI' => 'Virgin Islands (U.S.)',
'VN' => 'Viet Nam',
'VU' => 'Vanuatu',
'WF' => 'Wallis and Futuna',
'WS' => 'Samoa',
'YE' => 'Yemen',
'YT' => 'Mayotte',
'ZA' => 'South Africa',
'ZM' => 'Zambia',
'ZW' => 'Zimbabwe',
];
src/Carbon/MessageFormatter/MessageFormatterMapper.php 0000644 00000002457 14753612052 0017152 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\MessageFormatter;
use ReflectionMethod;
use Symfony\Component\Translation\Formatter\MessageFormatter;
use Symfony\Component\Translation\Formatter\MessageFormatterInterface;
// @codeCoverageIgnoreStart
$transMethod = new ReflectionMethod(MessageFormatterInterface::class, 'format');
require $transMethod->getParameters()[0]->hasType()
? __DIR__.'/../../../lazy/Carbon/MessageFormatter/MessageFormatterMapperStrongType.php'
: __DIR__.'/../../../lazy/Carbon/MessageFormatter/MessageFormatterMapperWeakType.php';
// @codeCoverageIgnoreEnd
final class MessageFormatterMapper extends LazyMessageFormatter
{
/**
* Wrapped formatter.
*
* @var MessageFormatterInterface
*/
protected $formatter;
public function __construct(?MessageFormatterInterface $formatter = null)
{
$this->formatter = $formatter ?? new MessageFormatter();
}
protected function transformLocale(?string $locale): ?string
{
return $locale ? preg_replace('/[_@][A-Za-z][a-z]{2,}/', '', $locale) : $locale;
}
}
src/Carbon/Month.php 0000644 00000004763 14753612052 0010354 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon;
use Carbon\Exceptions\InvalidFormatException;
enum Month: int
{
// Using constants is only safe starting from PHP 8.2
case January = 1; // CarbonInterface::JANUARY
case February = 2; // CarbonInterface::FEBRUARY
case March = 3; // CarbonInterface::MARCH
case April = 4; // CarbonInterface::APRIL
case May = 5; // CarbonInterface::MAY
case June = 6; // CarbonInterface::JUNE
case July = 7; // CarbonInterface::JULY
case August = 8; // CarbonInterface::AUGUST
case September = 9; // CarbonInterface::SEPTEMBER
case October = 10; // CarbonInterface::OCTOBER
case November = 11; // CarbonInterface::NOVEMBER
case December = 12; // CarbonInterface::DECEMBER
public static function int(self|int|null $value): ?int
{
return $value instanceof self ? $value->value : $value;
}
public static function fromNumber(int $number): self
{
$month = $number % CarbonInterface::MONTHS_PER_YEAR;
return self::from($month + ($month < 1 ? CarbonInterface::MONTHS_PER_YEAR : 0));
}
public static function fromName(string $name, ?string $locale = null): self
{
try {
return self::from(CarbonImmutable::parseFromLocale("$name 1", $locale)->month);
} catch (InvalidFormatException $exception) {
// Possibly current language expect a dot after short name, but it's missing
if ($locale !== null && !mb_strlen($name) < 4 && !str_ends_with($name, '.')) {
try {
return self::from(CarbonImmutable::parseFromLocale("$name. 1", $locale)->month);
} catch (InvalidFormatException $e) {
// Throw previous error
}
}
throw $exception;
}
}
public function ofTheYear(CarbonImmutable|int|null $now = null): CarbonImmutable
{
if (\is_int($now)) {
return CarbonImmutable::create($now, $this->value);
}
$modifier = $this->name.' 1st';
return $now?->modify($modifier) ?? new CarbonImmutable($modifier);
}
public function locale(string $locale, ?CarbonImmutable $now = null): CarbonImmutable
{
return $this->ofTheYear($now)->locale($locale);
}
}
src/Carbon/PHPStan/MacroExtension.php 0000644 00000010115 14753612052 0013466 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\PHPStan;
use Carbon\CarbonInterface;
use Carbon\FactoryImmutable;
use Closure;
use InvalidArgumentException;
use PHPStan\Reflection\ClassReflection;
use PHPStan\Reflection\MethodReflection;
use PHPStan\Reflection\MethodsClassReflectionExtension;
use PHPStan\Reflection\ReflectionProvider;
use PHPStan\Type\ClosureTypeFactory;
use ReflectionFunction;
use ReflectionMethod;
use stdClass;
use Throwable;
/**
* Class MacroExtension.
*
* @codeCoverageIgnore Pure PHPStan wrapper.
*/
final class MacroExtension implements MethodsClassReflectionExtension
{
/**
* @var ReflectionProvider
*/
protected $reflectionProvider;
/**
* @var ClosureTypeFactory
*/
protected $closureTypeFactory;
/**
* Extension constructor.
*
* @param ReflectionProvider $reflectionProvider
* @param ClosureTypeFactory $closureTypeFactory
*/
public function __construct(
ReflectionProvider $reflectionProvider,
ClosureTypeFactory $closureTypeFactory
) {
$this->reflectionProvider = $reflectionProvider;
$this->closureTypeFactory = $closureTypeFactory;
}
/**
* {@inheritdoc}
*/
public function hasMethod(ClassReflection $classReflection, string $methodName): bool
{
if (
$classReflection->getName() !== CarbonInterface::class &&
!$classReflection->isSubclassOf(CarbonInterface::class)
) {
return false;
}
$className = $classReflection->getName();
return \is_callable([$className, 'hasMacro']) &&
$className::hasMacro($methodName);
}
/**
* {@inheritdoc}
*/
public function getMethod(ClassReflection $classReflection, string $methodName): MethodReflection
{
$macros = FactoryImmutable::getDefaultInstance()->getSettings()['macros'] ?? [];
$macro = $macros[$methodName] ?? throw new InvalidArgumentException("Macro '$methodName' not found");
$static = false;
$final = false;
$deprecated = false;
$docComment = null;
if (\is_array($macro) && \count($macro) === 2 && \is_string($macro[1])) {
\assert($macro[1] !== '');
$reflection = new ReflectionMethod($macro[0], $macro[1]);
$closure = \is_object($macro[0]) ? $reflection->getClosure($macro[0]) : $reflection->getClosure();
$static = $reflection->isStatic();
$final = $reflection->isFinal();
$deprecated = $reflection->isDeprecated();
$docComment = $reflection->getDocComment() ?: null;
} elseif (\is_string($macro)) {
$reflection = new ReflectionFunction($macro);
$closure = $reflection->getClosure();
$deprecated = $reflection->isDeprecated();
$docComment = $reflection->getDocComment() ?: null;
} elseif ($macro instanceof Closure) {
$closure = $macro;
try {
$boundClosure = Closure::bind($closure, new stdClass());
$static = (!$boundClosure || (new ReflectionFunction($boundClosure))->getClosureThis() === null);
} catch (Throwable) {
$static = true;
}
$reflection = new ReflectionFunction($macro);
$deprecated = $reflection->isDeprecated();
$docComment = $reflection->getDocComment() ?: null;
}
if (!isset($closure)) {
throw new InvalidArgumentException('Could not create reflection from the spec given'); // @codeCoverageIgnore
}
$closureType = $this->closureTypeFactory->fromClosureObject($closure);
return new MacroMethodReflection(
$classReflection,
$methodName,
$closureType,
$static,
$final,
$deprecated,
$docComment,
);
}
}
src/Carbon/PHPStan/MacroMethodReflection.php 0000644 00000005325 14753612052 0014754 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\PHPStan;
use PHPStan\Reflection\ClassReflection;
use PHPStan\Reflection\MethodReflection;
use PHPStan\Reflection\ParametersAcceptor;
use PHPStan\TrinaryLogic;
use PHPStan\Type\Type;
use function preg_match;
class MacroMethodReflection implements MethodReflection
{
private ClassReflection $declaringClass;
private string $methodName;
private ParametersAcceptor $macroClosureType;
private bool $static;
private bool $final;
private bool $deprecated;
private ?string $docComment;
public function __construct(
ClassReflection $declaringClass,
string $methodName,
ParametersAcceptor $macroClosureType,
bool $static,
bool $final,
bool $deprecated,
?string $docComment
) {
$this->declaringClass = $declaringClass;
$this->methodName = $methodName;
$this->macroClosureType = $macroClosureType;
$this->static = $static;
$this->final = $final;
$this->deprecated = $deprecated;
$this->docComment = $docComment;
}
public function getDeclaringClass(): ClassReflection
{
return $this->declaringClass;
}
public function isStatic(): bool
{
return $this->static;
}
public function isPrivate(): bool
{
return false;
}
public function isPublic(): bool
{
return true;
}
public function getDocComment(): ?string
{
return $this->docComment;
}
public function getName(): string
{
return $this->methodName;
}
public function getPrototype(): \PHPStan\Reflection\ClassMemberReflection
{
return $this;
}
public function getVariants(): array
{
return [$this->macroClosureType];
}
public function isDeprecated(): TrinaryLogic
{
return TrinaryLogic::createFromBoolean(
$this->deprecated ||
preg_match('/@deprecated/i', $this->getDocComment() ?: '')
);
}
public function getDeprecatedDescription(): ?string
{
return null;
}
public function isFinal(): TrinaryLogic
{
return TrinaryLogic::createFromBoolean($this->final);
}
public function isInternal(): TrinaryLogic
{
return TrinaryLogic::createNo();
}
public function getThrowType(): ?Type
{
return null;
}
public function hasSideEffects(): TrinaryLogic
{
return TrinaryLogic::createMaybe();
}
}
src/Carbon/Traits/Boundaries.php 0000644 00000030226 14753612052 0012621 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\Exceptions\UnknownUnitException;
use Carbon\Unit;
use Carbon\WeekDay;
/**
* Trait Boundaries.
*
* startOf, endOf and derived method for each unit.
*
* Depends on the following properties:
*
* @property int $year
* @property int $month
* @property int $daysInMonth
* @property int $quarter
*
* Depends on the following methods:
*
* @method $this setTime(int $hour, int $minute, int $second = 0, int $microseconds = 0)
* @method $this setDate(int $year, int $month, int $day)
* @method $this addMonths(int $value = 1)
*/
trait Boundaries
{
/**
* Resets the time to 00:00:00 start of day
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfDay();
* ```
*
* @return static
*/
public function startOfDay()
{
return $this->setTime(0, 0, 0, 0);
}
/**
* Resets the time to 23:59:59.999999 end of day
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfDay();
* ```
*
* @return static
*/
public function endOfDay()
{
return $this->setTime(static::HOURS_PER_DAY - 1, static::MINUTES_PER_HOUR - 1, static::SECONDS_PER_MINUTE - 1, static::MICROSECONDS_PER_SECOND - 1);
}
/**
* Resets the date to the first day of the month and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfMonth();
* ```
*
* @return static
*/
public function startOfMonth()
{
return $this->setDate($this->year, $this->month, 1)->startOfDay();
}
/**
* Resets the date to end of the month and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfMonth();
* ```
*
* @return static
*/
public function endOfMonth()
{
return $this->setDate($this->year, $this->month, $this->daysInMonth)->endOfDay();
}
/**
* Resets the date to the first day of the quarter and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfQuarter();
* ```
*
* @return static
*/
public function startOfQuarter()
{
$month = ($this->quarter - 1) * static::MONTHS_PER_QUARTER + 1;
return $this->setDate($this->year, $month, 1)->startOfDay();
}
/**
* Resets the date to end of the quarter and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfQuarter();
* ```
*
* @return static
*/
public function endOfQuarter()
{
return $this->startOfQuarter()->addMonths(static::MONTHS_PER_QUARTER - 1)->endOfMonth();
}
/**
* Resets the date to the first day of the year and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfYear();
* ```
*
* @return static
*/
public function startOfYear()
{
return $this->setDate($this->year, 1, 1)->startOfDay();
}
/**
* Resets the date to end of the year and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfYear();
* ```
*
* @return static
*/
public function endOfYear()
{
return $this->setDate($this->year, 12, 31)->endOfDay();
}
/**
* Resets the date to the first day of the decade and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfDecade();
* ```
*
* @return static
*/
public function startOfDecade()
{
$year = $this->year - $this->year % static::YEARS_PER_DECADE;
return $this->setDate($year, 1, 1)->startOfDay();
}
/**
* Resets the date to end of the decade and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfDecade();
* ```
*
* @return static
*/
public function endOfDecade()
{
$year = $this->year - $this->year % static::YEARS_PER_DECADE + static::YEARS_PER_DECADE - 1;
return $this->setDate($year, 12, 31)->endOfDay();
}
/**
* Resets the date to the first day of the century and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfCentury();
* ```
*
* @return static
*/
public function startOfCentury()
{
$year = $this->year - ($this->year - 1) % static::YEARS_PER_CENTURY;
return $this->setDate($year, 1, 1)->startOfDay();
}
/**
* Resets the date to end of the century and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfCentury();
* ```
*
* @return static
*/
public function endOfCentury()
{
$year = $this->year - 1 - ($this->year - 1) % static::YEARS_PER_CENTURY + static::YEARS_PER_CENTURY;
return $this->setDate($year, 12, 31)->endOfDay();
}
/**
* Resets the date to the first day of the millennium and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfMillennium();
* ```
*
* @return static
*/
public function startOfMillennium()
{
$year = $this->year - ($this->year - 1) % static::YEARS_PER_MILLENNIUM;
return $this->setDate($year, 1, 1)->startOfDay();
}
/**
* Resets the date to end of the millennium and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfMillennium();
* ```
*
* @return static
*/
public function endOfMillennium()
{
$year = $this->year - 1 - ($this->year - 1) % static::YEARS_PER_MILLENNIUM + static::YEARS_PER_MILLENNIUM;
return $this->setDate($year, 12, 31)->endOfDay();
}
/**
* Resets the date to the first day of week (defined in $weekStartsAt) and the time to 00:00:00
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->startOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->startOfWeek(Carbon::SUNDAY) . "\n";
* ```
*
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week
*
* @return static
*/
public function startOfWeek(WeekDay|int|null $weekStartsAt = null): static
{
return $this
->subDays(
(static::DAYS_PER_WEEK + $this->dayOfWeek - (WeekDay::int($weekStartsAt) ?? $this->firstWeekDay)) %
static::DAYS_PER_WEEK,
)
->startOfDay();
}
/**
* Resets the date to end of week (defined in $weekEndsAt) and time to 23:59:59.999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->locale('ar')->endOfWeek() . "\n";
* echo Carbon::parse('2018-07-25 12:45:16')->endOfWeek(Carbon::SATURDAY) . "\n";
* ```
*
* @param WeekDay|int|null $weekEndsAt optional end allow you to specify the day of week to use to end the week
*
* @return static
*/
public function endOfWeek(WeekDay|int|null $weekEndsAt = null): static
{
return $this
->addDays(
(static::DAYS_PER_WEEK - $this->dayOfWeek + (WeekDay::int($weekEndsAt) ?? $this->lastWeekDay)) %
static::DAYS_PER_WEEK,
)
->endOfDay();
}
/**
* Modify to start of current hour, minutes and seconds become 0
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfHour();
* ```
*/
public function startOfHour(): static
{
return $this->setTime($this->hour, 0, 0, 0);
}
/**
* Modify to end of current hour, minutes and seconds become 59
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfHour();
* ```
*/
public function endOfHour(): static
{
return $this->setTime($this->hour, static::MINUTES_PER_HOUR - 1, static::SECONDS_PER_MINUTE - 1, static::MICROSECONDS_PER_SECOND - 1);
}
/**
* Modify to start of current minute, seconds become 0
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->startOfMinute();
* ```
*/
public function startOfMinute(): static
{
return $this->setTime($this->hour, $this->minute, 0, 0);
}
/**
* Modify to end of current minute, seconds become 59
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16')->endOfMinute();
* ```
*/
public function endOfMinute(): static
{
return $this->setTime($this->hour, $this->minute, static::SECONDS_PER_MINUTE - 1, static::MICROSECONDS_PER_SECOND - 1);
}
/**
* Modify to start of current second, microseconds become 0
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function startOfSecond(): static
{
return $this->setTime($this->hour, $this->minute, $this->second, 0);
}
/**
* Modify to end of current second, microseconds become 999999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->endOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function endOfSecond(): static
{
return $this->setTime($this->hour, $this->minute, $this->second, static::MICROSECONDS_PER_SECOND - 1);
}
/**
* Modify to start of current millisecond, microseconds such as 12345 become 123000
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function startOfMillisecond(): static
{
$millisecond = (int) floor($this->micro / 1000);
return $this->setTime($this->hour, $this->minute, $this->second, $millisecond * 1000);
}
/**
* Modify to end of current millisecond, microseconds such as 12345 become 123999
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->endOfSecond()
* ->format('H:i:s.u');
* ```
*/
public function endOfMillisecond(): static
{
$millisecond = (int) floor($this->micro / 1000);
return $this->setTime($this->hour, $this->minute, $this->second, $millisecond * 1000 + 999);
}
/**
* Modify to start of current given unit.
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOf(Unit::Month)
* ->endOf(Unit::Week, Carbon::FRIDAY);
* ```
*/
public function startOf(Unit|string $unit, mixed ...$params): static
{
$ucfUnit = ucfirst($unit instanceof Unit ? $unit->value : static::singularUnit($unit));
$method = "startOf$ucfUnit";
if (!method_exists($this, $method)) {
throw new UnknownUnitException($unit);
}
return $this->$method(...$params);
}
/**
* Modify to end of current given unit.
*
* @example
* ```
* echo Carbon::parse('2018-07-25 12:45:16.334455')
* ->startOf(Unit::Month)
* ->endOf(Unit::Week, Carbon::FRIDAY);
* ```
*/
public function endOf(Unit|string $unit, mixed ...$params): static
{
$ucfUnit = ucfirst($unit instanceof Unit ? $unit->value : static::singularUnit($unit));
$method = "endOf$ucfUnit";
if (!method_exists($this, $method)) {
throw new UnknownUnitException($unit);
}
return $this->$method(...$params);
}
}
src/Carbon/Traits/Cast.php 0000644 00000002243 14753612052 0011416 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\Exceptions\InvalidCastException;
use DateTimeInterface;
/**
* Trait Cast.
*
* Utils to cast into an other class.
*/
trait Cast
{
/**
* Cast the current instance into the given class.
*
* @template T
*
* @param class-string $className The $className::instance() method will be called to cast the current object.
*
* @return T
*/
public function cast(string $className): mixed
{
if (!method_exists($className, 'instance')) {
if (is_a($className, DateTimeInterface::class, true)) {
return $className::createFromFormat('U.u', $this->rawFormat('U.u'))
->setTimezone($this->getTimezone());
}
throw new InvalidCastException("$className has not the instance() method needed to cast the date.");
}
return $className::instance($this);
}
}
src/Carbon/Traits/Comparison.php 0000644 00000132411 14753612052 0012637 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use BackedEnum;
use BadMethodCallException;
use Carbon\CarbonConverterInterface;
use Carbon\CarbonInterface;
use Carbon\Exceptions\BadComparisonUnitException;
use Carbon\FactoryImmutable;
use Carbon\Month;
use Carbon\Unit;
use Carbon\WeekDay;
use Closure;
use DateInterval;
use DateTimeInterface;
use InvalidArgumentException;
/**
* Trait Comparison.
*
* Comparison utils and testers. All the following methods return booleans.
* nowWithSameTz
*
* Depends on the following methods:
*
* @method static resolveCarbon($date)
* @method static copy()
* @method static nowWithSameTz()
* @method static static yesterday($timezone = null)
* @method static static tomorrow($timezone = null)
*/
trait Comparison
{
protected bool $endOfTime = false;
protected bool $startOfTime = false;
/**
* Determines if the instance is equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->eq(Carbon::parse('2018-07-25 12:45:16')); // true
* Carbon::parse('2018-07-25 12:45:16')->eq('2018-07-25 12:45:17'); // false
* ```
*
* @see equalTo()
*/
public function eq(DateTimeInterface|string $date): bool
{
return $this->equalTo($date);
}
/**
* Determines if the instance is equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->equalTo(Carbon::parse('2018-07-25 12:45:16')); // true
* Carbon::parse('2018-07-25 12:45:16')->equalTo('2018-07-25 12:45:17'); // false
* ```
*/
public function equalTo(DateTimeInterface|string $date): bool
{
return $this == $this->resolveCarbon($date);
}
/**
* Determines if the instance is not equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->ne(Carbon::parse('2018-07-25 12:45:16')); // false
* Carbon::parse('2018-07-25 12:45:16')->ne('2018-07-25 12:45:17'); // true
* ```
*
* @see notEqualTo()
*/
public function ne(DateTimeInterface|string $date): bool
{
return $this->notEqualTo($date);
}
/**
* Determines if the instance is not equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->notEqualTo(Carbon::parse('2018-07-25 12:45:16')); // false
* Carbon::parse('2018-07-25 12:45:16')->notEqualTo('2018-07-25 12:45:17'); // true
* ```
*/
public function notEqualTo(DateTimeInterface|string $date): bool
{
return !$this->equalTo($date);
}
/**
* Determines if the instance is greater (after) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->gt('2018-07-25 12:45:17'); // false
* ```
*
* @see greaterThan()
*/
public function gt(DateTimeInterface|string $date): bool
{
return $this->greaterThan($date);
}
/**
* Determines if the instance is greater (after) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->greaterThan('2018-07-25 12:45:17'); // false
* ```
*/
public function greaterThan(DateTimeInterface|string $date): bool
{
return $this > $this->resolveCarbon($date);
}
/**
* Determines if the instance is greater (after) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->isAfter('2018-07-25 12:45:17'); // false
* ```
*
* @see greaterThan()
*/
public function isAfter(DateTimeInterface|string $date): bool
{
return $this->greaterThan($date);
}
/**
* Determines if the instance is greater (after) than or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->gte('2018-07-25 12:45:17'); // false
* ```
*
* @see greaterThanOrEqualTo()
*/
public function gte(DateTimeInterface|string $date): bool
{
return $this->greaterThanOrEqualTo($date);
}
/**
* Determines if the instance is greater (after) than or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:15'); // true
* Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->greaterThanOrEqualTo('2018-07-25 12:45:17'); // false
* ```
*/
public function greaterThanOrEqualTo(DateTimeInterface|string $date): bool
{
return $this >= $this->resolveCarbon($date);
}
/**
* Determines if the instance is less (before) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->lt('2018-07-25 12:45:17'); // true
* ```
*
* @see lessThan()
*/
public function lt(DateTimeInterface|string $date): bool
{
return $this->lessThan($date);
}
/**
* Determines if the instance is less (before) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->lessThan('2018-07-25 12:45:17'); // true
* ```
*/
public function lessThan(DateTimeInterface|string $date): bool
{
return $this < $this->resolveCarbon($date);
}
/**
* Determines if the instance is less (before) than another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:16'); // false
* Carbon::parse('2018-07-25 12:45:16')->isBefore('2018-07-25 12:45:17'); // true
* ```
*
* @see lessThan()
*/
public function isBefore(DateTimeInterface|string $date): bool
{
return $this->lessThan($date);
}
/**
* Determines if the instance is less (before) or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->lte('2018-07-25 12:45:17'); // true
* ```
*
* @see lessThanOrEqualTo()
*/
public function lte(DateTimeInterface|string $date): bool
{
return $this->lessThanOrEqualTo($date);
}
/**
* Determines if the instance is less (before) or equal to another
*
* @example
* ```
* Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:15'); // false
* Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:16'); // true
* Carbon::parse('2018-07-25 12:45:16')->lessThanOrEqualTo('2018-07-25 12:45:17'); // true
* ```
*/
public function lessThanOrEqualTo(DateTimeInterface|string $date): bool
{
return $this <= $this->resolveCarbon($date);
}
/**
* Determines if the instance is between two others.
*
* The third argument allow you to specify if bounds are included or not (true by default)
* but for when you including/excluding bounds may produce different results in your application,
* we recommend to use the explicit methods ->betweenIncluded() or ->betweenExcluded() instead.
*
* @example
* ```
* Carbon::parse('2018-07-25')->between('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->between('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->between('2018-07-25', '2018-08-01', false); // false
* ```
*
* @param bool $equal Indicates if an equal to comparison should be done
*/
public function between(DateTimeInterface|string $date1, DateTimeInterface|string $date2, bool $equal = true): bool
{
$date1 = $this->resolveCarbon($date1);
$date2 = $this->resolveCarbon($date2);
if ($date1->greaterThan($date2)) {
[$date1, $date2] = [$date2, $date1];
}
if ($equal) {
return $this >= $date1 && $this <= $date2;
}
return $this > $date1 && $this < $date2;
}
/**
* Determines if the instance is between two others, bounds included.
*
* @example
* ```
* Carbon::parse('2018-07-25')->betweenIncluded('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->betweenIncluded('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->betweenIncluded('2018-07-25', '2018-08-01'); // true
* ```
*/
public function betweenIncluded(DateTimeInterface|string $date1, DateTimeInterface|string $date2): bool
{
return $this->between($date1, $date2, true);
}
/**
* Determines if the instance is between two others, bounds excluded.
*
* @example
* ```
* Carbon::parse('2018-07-25')->betweenExcluded('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->betweenExcluded('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->betweenExcluded('2018-07-25', '2018-08-01'); // false
* ```
*/
public function betweenExcluded(DateTimeInterface|string $date1, DateTimeInterface|string $date2): bool
{
return $this->between($date1, $date2, false);
}
/**
* Determines if the instance is between two others
*
* @example
* ```
* Carbon::parse('2018-07-25')->isBetween('2018-07-14', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->isBetween('2018-08-01', '2018-08-20'); // false
* Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01'); // true
* Carbon::parse('2018-07-25')->isBetween('2018-07-25', '2018-08-01', false); // false
* ```
*
* @param bool $equal Indicates if an equal to comparison should be done
*/
public function isBetween(DateTimeInterface|string $date1, DateTimeInterface|string $date2, bool $equal = true): bool
{
return $this->between($date1, $date2, $equal);
}
/**
* Determines if the instance is a weekday.
*
* @example
* ```
* Carbon::parse('2019-07-14')->isWeekday(); // false
* Carbon::parse('2019-07-15')->isWeekday(); // true
* ```
*/
public function isWeekday(): bool
{
return !$this->isWeekend();
}
/**
* Determines if the instance is a weekend day.
*
* @example
* ```
* Carbon::parse('2019-07-14')->isWeekend(); // true
* Carbon::parse('2019-07-15')->isWeekend(); // false
* ```
*/
public function isWeekend(): bool
{
return \in_array(
$this->dayOfWeek,
$this->transmitFactory(static fn () => static::getWeekendDays()),
true,
);
}
/**
* Determines if the instance is yesterday.
*
* @example
* ```
* Carbon::yesterday()->isYesterday(); // true
* Carbon::tomorrow()->isYesterday(); // false
* ```
*/
public function isYesterday(): bool
{
return $this->toDateString() === $this->transmitFactory(
fn () => static::yesterday($this->getTimezone())->toDateString(),
);
}
/**
* Determines if the instance is today.
*
* @example
* ```
* Carbon::today()->isToday(); // true
* Carbon::tomorrow()->isToday(); // false
* ```
*/
public function isToday(): bool
{
return $this->toDateString() === $this->nowWithSameTz()->toDateString();
}
/**
* Determines if the instance is tomorrow.
*
* @example
* ```
* Carbon::tomorrow()->isTomorrow(); // true
* Carbon::yesterday()->isTomorrow(); // false
* ```
*/
public function isTomorrow(): bool
{
return $this->toDateString() === $this->transmitFactory(
fn () => static::tomorrow($this->getTimezone())->toDateString(),
);
}
/**
* Determines if the instance is in the future, ie. greater (after) than now.
*
* @example
* ```
* Carbon::now()->addHours(5)->isFuture(); // true
* Carbon::now()->subHours(5)->isFuture(); // false
* ```
*/
public function isFuture(): bool
{
return $this->greaterThan($this->nowWithSameTz());
}
/**
* Determines if the instance is in the past, ie. less (before) than now.
*
* @example
* ```
* Carbon::now()->subHours(5)->isPast(); // true
* Carbon::now()->addHours(5)->isPast(); // false
* ```
*/
public function isPast(): bool
{
return $this->lessThan($this->nowWithSameTz());
}
/**
* Determines if the instance is a leap year.
*
* @example
* ```
* Carbon::parse('2020-01-01')->isLeapYear(); // true
* Carbon::parse('2019-01-01')->isLeapYear(); // false
* ```
*/
public function isLeapYear(): bool
{
return $this->rawFormat('L') === '1';
}
/**
* Determines if the instance is a long year (using calendar year).
*
* ⚠️ This method completely ignores month and day to use the numeric year number,
* it's not correct if the exact date matters. For instance as `2019-12-30` is already
* in the first week of the 2020 year, if you want to know from this date if ISO week
* year 2020 is a long year, use `isLongIsoYear` instead.
*
* @example
* ```
* Carbon::create(2015)->isLongYear(); // true
* Carbon::create(2016)->isLongYear(); // false
* ```
*
* @see https://en.wikipedia.org/wiki/ISO_8601#Week_dates
*/
public function isLongYear(): bool
{
return static::create($this->year, 12, 28, 0, 0, 0, $this->tz)->weekOfYear === static::WEEKS_PER_YEAR + 1;
}
/**
* Determines if the instance is a long year (using ISO 8601 year).
*
* @example
* ```
* Carbon::parse('2015-01-01')->isLongIsoYear(); // true
* Carbon::parse('2016-01-01')->isLongIsoYear(); // true
* Carbon::parse('2016-01-03')->isLongIsoYear(); // false
* Carbon::parse('2019-12-29')->isLongIsoYear(); // false
* Carbon::parse('2019-12-30')->isLongIsoYear(); // true
* ```
*
* @see https://en.wikipedia.org/wiki/ISO_8601#Week_dates
*/
public function isLongIsoYear(): bool
{
return static::create($this->isoWeekYear, 12, 28, 0, 0, 0, $this->tz)->weekOfYear === 53;
}
/**
* Compares the formatted values of the two dates.
*
* @example
* ```
* Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-12-13')); // true
* Carbon::parse('2019-06-13')->isSameAs('Y-d', Carbon::parse('2019-06-14')); // false
* ```
*
* @param string $format date formats to compare.
* @param DateTimeInterface|string $date instance to compare with or null to use current day.
*/
public function isSameAs(string $format, DateTimeInterface|string $date): bool
{
return $this->rawFormat($format) === $this->resolveCarbon($date)->rawFormat($format);
}
/**
* Determines if the instance is in the current unit given.
*
* @example
* ```
* Carbon::parse('2019-01-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // true
* Carbon::parse('2018-12-13')->isSameUnit('year', Carbon::parse('2019-12-25')); // false
* ```
*
* @param string $unit singular unit string
* @param DateTimeInterface|string $date instance to compare with or null to use current day.
*
* @throws BadComparisonUnitException
*
* @return bool
*/
public function isSameUnit(string $unit, DateTimeInterface|string $date): bool
{
if ($unit === /* @call isSameUnit */ 'quarter') {
$other = $this->resolveCarbon($date);
return $other->year === $this->year && $other->quarter === $this->quarter;
}
$units = [
// @call isSameUnit
'year' => 'Y',
// @call isSameUnit
'month' => 'Y-n',
// @call isSameUnit
'week' => 'o-W',
// @call isSameUnit
'day' => 'Y-m-d',
// @call isSameUnit
'hour' => 'Y-m-d H',
// @call isSameUnit
'minute' => 'Y-m-d H:i',
// @call isSameUnit
'second' => 'Y-m-d H:i:s',
// @call isSameUnit
'milli' => 'Y-m-d H:i:s.v',
// @call isSameUnit
'millisecond' => 'Y-m-d H:i:s.v',
// @call isSameUnit
'micro' => 'Y-m-d H:i:s.u',
// @call isSameUnit
'microsecond' => 'Y-m-d H:i:s.u',
];
if (isset($units[$unit])) {
return $this->isSameAs($units[$unit], $date);
}
if (isset($this->$unit)) {
return $this->resolveCarbon($date)->$unit === $this->$unit;
}
if ($this->isLocalStrictModeEnabled()) {
throw new BadComparisonUnitException($unit);
}
return false;
}
/**
* Determines if the instance is in the current unit given.
*
* @example
* ```
* Carbon::now()->isCurrentUnit('hour'); // true
* Carbon::now()->subHours(2)->isCurrentUnit('hour'); // false
* ```
*
* @param string $unit The unit to test.
*
* @throws BadMethodCallException
*/
public function isCurrentUnit(string $unit): bool
{
return $this->{'isSame'.ucfirst($unit)}('now');
}
/**
* Checks if the passed in date is in the same quarter as the instance quarter (and year if needed).
*
* @example
* ```
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-03-01')); // true
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2019-04-01')); // false
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01')); // false
* Carbon::parse('2019-01-12')->isSameQuarter(Carbon::parse('2018-03-01'), false); // true
* ```
*
* @param DateTimeInterface|string $date The instance to compare with or null to use current day.
* @param bool $ofSameYear Check if it is the same month in the same year.
*
* @return bool
*/
public function isSameQuarter(DateTimeInterface|string $date, bool $ofSameYear = true): bool
{
$date = $this->resolveCarbon($date);
return $this->quarter === $date->quarter && (!$ofSameYear || $this->isSameYear($date));
}
/**
* Checks if the passed in date is in the same month as the instance´s month.
*
* @example
* ```
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-01-01')); // true
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2019-02-01')); // false
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01')); // false
* Carbon::parse('2019-01-12')->isSameMonth(Carbon::parse('2018-01-01'), false); // true
* ```
*
* @param DateTimeInterface|string $date The instance to compare with or null to use the current date.
* @param bool $ofSameYear Check if it is the same month in the same year.
*
* @return bool
*/
public function isSameMonth(DateTimeInterface|string $date, bool $ofSameYear = true): bool
{
return $this->isSameAs($ofSameYear ? 'Y-m' : 'm', $date);
}
/**
* Checks if this day is a specific day of the week.
*
* @example
* ```
* Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::WEDNESDAY); // true
* Carbon::parse('2019-07-17')->isDayOfWeek(Carbon::FRIDAY); // false
* Carbon::parse('2019-07-17')->isDayOfWeek('Wednesday'); // true
* Carbon::parse('2019-07-17')->isDayOfWeek('Friday'); // false
* ```
*
* @param int|string $dayOfWeek
*
* @return bool
*/
public function isDayOfWeek($dayOfWeek): bool
{
if (\is_string($dayOfWeek) && \defined($constant = static::class.'::'.strtoupper($dayOfWeek))) {
$dayOfWeek = \constant($constant);
}
return $this->dayOfWeek === $dayOfWeek;
}
/**
* Check if its the birthday. Compares the date/month values of the two dates.
*
* @example
* ```
* Carbon::now()->subYears(5)->isBirthday(); // true
* Carbon::now()->subYears(5)->subDay()->isBirthday(); // false
* Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-05')); // true
* Carbon::parse('2019-06-05')->isBirthday(Carbon::parse('2001-06-06')); // false
* ```
*
* @param DateTimeInterface|string|null $date The instance to compare with or null to use current day.
*
* @return bool
*/
public function isBirthday(DateTimeInterface|string|null $date = null): bool
{
return $this->isSameAs('md', $date ?? 'now');
}
/**
* Check if today is the last day of the Month
*
* @example
* ```
* Carbon::parse('2019-02-28')->isLastOfMonth(); // true
* Carbon::parse('2019-03-28')->isLastOfMonth(); // false
* Carbon::parse('2019-03-30')->isLastOfMonth(); // false
* Carbon::parse('2019-03-31')->isLastOfMonth(); // true
* Carbon::parse('2019-04-30')->isLastOfMonth(); // true
* ```
*/
public function isLastOfMonth(): bool
{
return $this->day === $this->daysInMonth;
}
/**
* Check if the instance is start of a given unit (tolerating a given interval).
*
* @example
* ```
* // Check if a date-time is the first 15 minutes of the hour it's in
* Carbon::parse('2019-02-28 20:13:00')->isStartOfUnit(Unit::Hour, '15 minutes'); // true
* ```
*/
public function isStartOfUnit(
Unit $unit,
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
mixed ...$params,
): bool {
$interval ??= match ($unit) {
Unit::Day, Unit::Hour, Unit::Minute, Unit::Second, Unit::Millisecond, Unit::Microsecond => Unit::Microsecond,
default => Unit::Day,
};
$startOfUnit = $this->avoidMutation()->startOf($unit, ...$params);
$startOfUnitDateTime = $startOfUnit->rawFormat('Y-m-d H:i:s.u');
$maximumDateTime = $startOfUnit
->add($interval instanceof Unit ? '1 '.$interval->value : $interval)
->rawFormat('Y-m-d H:i:s.u');
if ($maximumDateTime < $startOfUnitDateTime) {
return false;
}
return $this->rawFormat('Y-m-d H:i:s.u') < $maximumDateTime;
}
/**
* Check if the instance is end of a given unit (tolerating a given interval).
*
* @example
* ```
* // Check if a date-time is the last 15 minutes of the hour it's in
* Carbon::parse('2019-02-28 20:13:00')->isEndOfUnit(Unit::Hour, '15 minutes'); // false
* ```
*/
public function isEndOfUnit(
Unit $unit,
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
mixed ...$params,
): bool {
$interval ??= match ($unit) {
Unit::Day, Unit::Hour, Unit::Minute, Unit::Second, Unit::Millisecond, Unit::Microsecond => Unit::Microsecond,
default => Unit::Day,
};
$endOfUnit = $this->avoidMutation()->endOf($unit, ...$params);
$endOfUnitDateTime = $endOfUnit->rawFormat('Y-m-d H:i:s.u');
$minimumDateTime = $endOfUnit
->sub($interval instanceof Unit ? '1 '.$interval->value : $interval)
->rawFormat('Y-m-d H:i:s.u');
if ($minimumDateTime > $endOfUnitDateTime) {
return false;
}
return $this->rawFormat('Y-m-d H:i:s.u') > $minimumDateTime;
}
/**
* Determines if the instance is start of millisecond (first microsecond by default but interval can be customized).
*/
public function isStartOfMillisecond(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Millisecond, $interval);
}
/**
* Determines if the instance is end of millisecond (last microsecond by default but interval can be customized).
*/
public function isEndOfMillisecond(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Millisecond, $interval);
}
/**
* Determines if the instance is start of second (first microsecond by default but interval can be customized).
*/
public function isStartOfSecond(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Second, $interval);
}
/**
* Determines if the instance is end of second (last microsecond by default but interval can be customized).
*/
public function isEndOfSecond(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Second, $interval);
}
/**
* Determines if the instance is start of minute (first microsecond by default but interval can be customized).
*/
public function isStartOfMinute(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Minute, $interval);
}
/**
* Determines if the instance is end of minute (last microsecond by default but interval can be customized).
*/
public function isEndOfMinute(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Minute, $interval);
}
/**
* Determines if the instance is start of hour (first microsecond by default but interval can be customized).
*/
public function isStartOfHour(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Hour, $interval);
}
/**
* Determines if the instance is end of hour (last microsecond by default but interval can be customized).
*/
public function isEndOfHour(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Hour, $interval);
}
/**
* Check if the instance is start of day / midnight.
*
* @example
* ```
* Carbon::parse('2019-02-28 00:00:00')->isStartOfDay(); // true
* Carbon::parse('2019-02-28 00:00:00.999999')->isStartOfDay(); // true
* Carbon::parse('2019-02-28 00:00:01')->isStartOfDay(); // false
* Carbon::parse('2019-02-28 00:00:00.000000')->isStartOfDay(true); // true
* Carbon::parse('2019-02-28 00:00:00.000012')->isStartOfDay(true); // false
* ```
*
* @param bool $checkMicroseconds check time at microseconds precision
* @param Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval if an interval is specified it will be used as precision
* for instance with "15 minutes", it checks if current date-time
* is in the last 15 minutes of the day, with Unit::Hour, it
* checks if it's in the last hour of the day.
*/
public function isStartOfDay(
Unit|DateInterval|Closure|CarbonConverterInterface|string|bool $checkMicroseconds = false,
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
if ($checkMicroseconds === true) {
@trigger_error(
"Since 3.8.0, it's deprecated to use \$checkMicroseconds.\n".
"It will be removed in 4.0.0.\n".
"Instead, you should use either isStartOfDay(interval: Unit::Microsecond) or isStartOfDay(interval: Unit::Second)\n".
'And you can now use any custom interval as precision, such as isStartOfDay(interval: "15 minutes")',
\E_USER_DEPRECATED,
);
}
if ($interval === null && !\is_bool($checkMicroseconds)) {
$interval = $checkMicroseconds;
}
if ($interval !== null) {
if ($interval instanceof Unit) {
$interval = '1 '.$interval->value;
}
$date = $this->rawFormat('Y-m-d');
$time = $this->rawFormat('H:i:s.u');
$maximum = $this->avoidMutation()->startOfDay()->add($interval);
$maximumDate = $maximum->rawFormat('Y-m-d');
if ($date === $maximumDate) {
return $time < $maximum->rawFormat('H:i:s.u');
}
return $maximumDate > $date;
}
/* @var CarbonInterface $this */
return $checkMicroseconds
? $this->rawFormat('H:i:s.u') === '00:00:00.000000'
: $this->rawFormat('H:i:s') === '00:00:00';
}
/**
* Check if the instance is end of day.
*
* @example
* ```
* Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(); // true
* Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(); // true
* Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(); // true
* Carbon::parse('2019-02-28 23:59:58.999999')->isEndOfDay(); // false
* Carbon::parse('2019-02-28 23:59:59.999999')->isEndOfDay(true); // true
* Carbon::parse('2019-02-28 23:59:59.123456')->isEndOfDay(true); // false
* Carbon::parse('2019-02-28 23:59:59')->isEndOfDay(true); // false
* ```
*
* @param bool $checkMicroseconds check time at microseconds precision
* @param Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval if an interval is specified it will be used as precision
* for instance with "15 minutes", it checks if current date-time
* is in the last 15 minutes of the day, with Unit::Hour, it
* checks if it's in the last hour of the day.
*/
public function isEndOfDay(
Unit|DateInterval|Closure|CarbonConverterInterface|string|bool $checkMicroseconds = false,
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
if ($checkMicroseconds === true) {
@trigger_error(
"Since 3.8.0, it's deprecated to use \$checkMicroseconds.\n".
"It will be removed in 4.0.0.\n".
"Instead, you should use either isEndOfDay(interval: Unit::Microsecond) or isEndOfDay(interval: Unit::Second)\n".
'And you can now use any custom interval as precision, such as isEndOfDay(interval: "15 minutes")',
\E_USER_DEPRECATED,
);
}
if ($interval === null && !\is_bool($checkMicroseconds)) {
$interval = $checkMicroseconds;
}
if ($interval !== null) {
$date = $this->rawFormat('Y-m-d');
$time = $this->rawFormat('H:i:s.u');
$minimum = $this->avoidMutation()
->endOfDay()
->sub($interval instanceof Unit ? '1 '.$interval->value : $interval);
$minimumDate = $minimum->rawFormat('Y-m-d');
if ($date === $minimumDate) {
return $time > $minimum->rawFormat('H:i:s.u');
}
return $minimumDate < $date;
}
/* @var CarbonInterface $this */
return $checkMicroseconds
? $this->rawFormat('H:i:s.u') === '23:59:59.999999'
: $this->rawFormat('H:i:s') === '23:59:59';
}
/**
* Determines if the instance is start of week (first day by default but interval can be customized).
*
* @example
* ```
* Carbon::parse('2024-08-31')->startOfWeek()->isStartOfWeek(); // true
* Carbon::parse('2024-08-31')->isStartOfWeek(); // false
* ```
*/
public function isStartOfWeek(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
WeekDay|int|null $weekStartsAt = null,
): bool {
return $this->isStartOfUnit(Unit::Week, $interval, $weekStartsAt);
}
/**
* Determines if the instance is end of week (last day by default but interval can be customized).
*
* @example
* ```
* Carbon::parse('2024-08-31')->endOfWeek()->isEndOfWeek(); // true
* Carbon::parse('2024-08-31')->isEndOfWeek(); // false
* ```
*/
public function isEndOfWeek(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
WeekDay|int|null $weekEndsAt = null,
): bool {
return $this->isEndOfUnit(Unit::Week, $interval, $weekEndsAt);
}
/**
* Determines if the instance is start of month (first day by default but interval can be customized).
*/
public function isStartOfMonth(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Month, $interval);
}
/**
* Determines if the instance is end of month (last day by default but interval can be customized).
*/
public function isEndOfMonth(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Month, $interval);
}
/**
* Determines if the instance is start of quarter (first day by default but interval can be customized).
*/
public function isStartOfQuarter(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Quarter, $interval);
}
/**
* Determines if the instance is end of quarter (last day by default but interval can be customized).
*/
public function isEndOfQuarter(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Quarter, $interval);
}
/**
* Determines if the instance is start of year (first day by default but interval can be customized).
*/
public function isStartOfYear(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Year, $interval);
}
/**
* Determines if the instance is end of year (last day by default but interval can be customized).
*/
public function isEndOfYear(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Year, $interval);
}
/**
* Determines if the instance is start of decade (first day by default but interval can be customized).
*/
public function isStartOfDecade(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Decade, $interval);
}
/**
* Determines if the instance is end of decade (last day by default but interval can be customized).
*/
public function isEndOfDecade(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Decade, $interval);
}
/**
* Determines if the instance is start of century (first day by default but interval can be customized).
*/
public function isStartOfCentury(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Century, $interval);
}
/**
* Determines if the instance is end of century (last day by default but interval can be customized).
*/
public function isEndOfCentury(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Century, $interval);
}
/**
* Determines if the instance is start of millennium (first day by default but interval can be customized).
*/
public function isStartOfMillennium(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isStartOfUnit(Unit::Millennium, $interval);
}
/**
* Determines if the instance is end of millennium (last day by default but interval can be customized).
*/
public function isEndOfMillennium(
Unit|DateInterval|Closure|CarbonConverterInterface|string|null $interval = null,
): bool {
return $this->isEndOfUnit(Unit::Millennium, $interval);
}
/**
* Check if the instance is start of day / midnight.
*
* @example
* ```
* Carbon::parse('2019-02-28 00:00:00')->isMidnight(); // true
* Carbon::parse('2019-02-28 00:00:00.999999')->isMidnight(); // true
* Carbon::parse('2019-02-28 00:00:01')->isMidnight(); // false
* ```
*/
public function isMidnight(): bool
{
return $this->isStartOfDay();
}
/**
* Check if the instance is midday.
*
* @example
* ```
* Carbon::parse('2019-02-28 11:59:59.999999')->isMidday(); // false
* Carbon::parse('2019-02-28 12:00:00')->isMidday(); // true
* Carbon::parse('2019-02-28 12:00:00.999999')->isMidday(); // true
* Carbon::parse('2019-02-28 12:00:01')->isMidday(); // false
* ```
*/
public function isMidday(): bool
{
/* @var CarbonInterface $this */
return $this->rawFormat('G:i:s') === static::$midDayAt.':00:00';
}
/**
* Checks if the (date)time string is in a given format.
*
* @example
* ```
* Carbon::hasFormat('11:12:45', 'h:i:s'); // true
* Carbon::hasFormat('13:12:45', 'h:i:s'); // false
* ```
*/
public static function hasFormat(string $date, string $format): bool
{
return FactoryImmutable::getInstance()->hasFormat($date, $format);
}
/**
* Checks if the (date)time string is in a given format.
*
* @example
* ```
* Carbon::hasFormatWithModifiers('31/08/2015', 'd#m#Y'); // true
* Carbon::hasFormatWithModifiers('31/08/2015', 'm#d#Y'); // false
* ```
*
* @param string $date
* @param string $format
*
* @return bool
*/
public static function hasFormatWithModifiers(?string $date, string $format): bool
{
return FactoryImmutable::getInstance()->hasFormatWithModifiers($date, $format);
}
/**
* Checks if the (date)time string is in a given format and valid to create a
* new instance.
*
* @example
* ```
* Carbon::canBeCreatedFromFormat('11:12:45', 'h:i:s'); // true
* Carbon::canBeCreatedFromFormat('13:12:45', 'h:i:s'); // false
* ```
*/
public static function canBeCreatedFromFormat(?string $date, string $format): bool
{
if ($date === null) {
return false;
}
try {
// Try to create a DateTime object. Throws an InvalidArgumentException if the provided time string
// doesn't match the format in any way.
if (!static::rawCreateFromFormat($format, $date)) {
return false;
}
} catch (InvalidArgumentException) {
return false;
}
return static::hasFormatWithModifiers($date, $format);
}
/**
* Returns true if the current date matches the given string.
*
* @example
* ```
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2018')); // false
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('06-02')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('2019-06-02')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('Sunday')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('June')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:45')); // true
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12:23:00')); // false
* var_dump(Carbon::parse('2019-06-02 12:23:45')->is('12h')); // true
* var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3pm')); // true
* var_dump(Carbon::parse('2019-06-02 15:23:45')->is('3am')); // false
* ```
*
* @param string $tester day name, month name, hour, date, etc. as string
*/
public function is(WeekDay|Month|string $tester): bool
{
if ($tester instanceof BackedEnum) {
$tester = $tester->name;
}
$tester = trim($tester);
if (preg_match('/^\d+$/', $tester)) {
return $this->year === (int) $tester;
}
if (preg_match('/^(?:Jan|January|Feb|February|Mar|March|Apr|April|May|Jun|June|Jul|July|Aug|August|Sep|September|Oct|October|Nov|November|Dec|December)$/i', $tester)) {
return $this->isSameMonth(
$this->transmitFactory(static fn () => static::parse($tester)),
false,
);
}
if (preg_match('/^\d{3,}-\d{1,2}$/', $tester)) {
return $this->isSameMonth(
$this->transmitFactory(static fn () => static::parse($tester)),
);
}
if (preg_match('/^\d{1,2}-\d{1,2}$/', $tester)) {
return $this->isSameDay(
$this->transmitFactory(fn () => static::parse($this->year.'-'.$tester)),
);
}
$modifier = preg_replace('/(\d)h$/i', '$1:00', $tester);
/* @var CarbonInterface $max */
$median = $this->transmitFactory(static fn () => static::parse('5555-06-15 12:30:30.555555'))
->modify($modifier);
$current = $this->avoidMutation();
/* @var CarbonInterface $other */
$other = $this->avoidMutation()->modify($modifier);
if ($current->eq($other)) {
return true;
}
if (preg_match('/\d:\d{1,2}:\d{1,2}$/', $tester)) {
return $current->startOfSecond()->eq($other);
}
if (preg_match('/\d:\d{1,2}$/', $tester)) {
return $current->startOfMinute()->eq($other);
}
if (preg_match('/\d(?:h|am|pm)$/', $tester)) {
return $current->startOfHour()->eq($other);
}
if (preg_match(
'/^(?:january|february|march|april|may|june|july|august|september|october|november|december)(?:\s+\d+)?$/i',
$tester,
)) {
return $current->startOfMonth()->eq($other->startOfMonth());
}
$units = [
'month' => [1, 'year'],
'day' => [1, 'month'],
'hour' => [0, 'day'],
'minute' => [0, 'hour'],
'second' => [0, 'minute'],
'microsecond' => [0, 'second'],
];
foreach ($units as $unit => [$minimum, $startUnit]) {
if ($minimum === $median->$unit) {
$current = $current->startOf($startUnit);
break;
}
}
return $current->eq($other);
}
/**
* Returns true if the date was created using CarbonImmutable::startOfTime()
*
* @return bool
*/
public function isStartOfTime(): bool
{
return $this->startOfTime ?? false;
}
/**
* Returns true if the date was created using CarbonImmutable::endOfTime()
*
* @return bool
*/
public function isEndOfTime(): bool
{
return $this->endOfTime ?? false;
}
}
src/Carbon/Traits/Converter.php 0000644 00000034175 14753612052 0012504 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\Carbon;
use Carbon\CarbonImmutable;
use Carbon\CarbonInterface;
use Carbon\CarbonInterval;
use Carbon\CarbonPeriod;
use Carbon\CarbonPeriodImmutable;
use Carbon\Exceptions\UnitException;
use Closure;
use DateTime;
use DateTimeImmutable;
use DateTimeInterface;
/**
* Trait Converter.
*
* Change date into different string formats and types and
* handle the string cast.
*
* Depends on the following methods:
*
* @method static copy()
*/
trait Converter
{
use ToStringFormat;
/**
* Returns the formatted date string on success or FALSE on failure.
*
* @see https://php.net/manual/en/datetime.format.php
*/
public function format(string $format): string
{
$function = $this->localFormatFunction
?? $this->getFactory()->getSettings()['formatFunction']
?? static::$formatFunction;
if (!$function) {
return $this->rawFormat($format);
}
if (\is_string($function) && method_exists($this, $function)) {
$function = [$this, $function];
}
return $function(...\func_get_args());
}
/**
* @see https://php.net/manual/en/datetime.format.php
*/
public function rawFormat(string $format): string
{
return parent::format($format);
}
/**
* Format the instance as a string using the set format
*
* @example
* ```
* echo Carbon::now(); // Carbon instances can be cast to string
* ```
*/
public function __toString(): string
{
$format = $this->localToStringFormat
?? $this->getFactory()->getSettings()['toStringFormat']
?? null;
return $format instanceof Closure
? $format($this)
: $this->rawFormat($format ?: (
\defined('static::DEFAULT_TO_STRING_FORMAT')
? static::DEFAULT_TO_STRING_FORMAT
: CarbonInterface::DEFAULT_TO_STRING_FORMAT
));
}
/**
* Format the instance as date
*
* @example
* ```
* echo Carbon::now()->toDateString();
* ```
*/
public function toDateString(): string
{
return $this->rawFormat('Y-m-d');
}
/**
* Format the instance as a readable date
*
* @example
* ```
* echo Carbon::now()->toFormattedDateString();
* ```
*/
public function toFormattedDateString(): string
{
return $this->rawFormat('M j, Y');
}
/**
* Format the instance with the day, and a readable date
*
* @example
* ```
* echo Carbon::now()->toFormattedDayDateString();
* ```
*/
public function toFormattedDayDateString(): string
{
return $this->rawFormat('D, M j, Y');
}
/**
* Format the instance as time
*
* @example
* ```
* echo Carbon::now()->toTimeString();
* ```
*/
public function toTimeString(string $unitPrecision = 'second'): string
{
return $this->rawFormat(static::getTimeFormatByPrecision($unitPrecision));
}
/**
* Format the instance as date and time
*
* @example
* ```
* echo Carbon::now()->toDateTimeString();
* ```
*/
public function toDateTimeString(string $unitPrecision = 'second'): string
{
return $this->rawFormat('Y-m-d '.static::getTimeFormatByPrecision($unitPrecision));
}
/**
* Return a format from H:i to H:i:s.u according to given unit precision.
*
* @param string $unitPrecision "minute", "second", "millisecond" or "microsecond"
*/
public static function getTimeFormatByPrecision(string $unitPrecision): string
{
return match (static::singularUnit($unitPrecision)) {
'minute' => 'H:i',
'second' => 'H:i:s',
'm', 'millisecond' => 'H:i:s.v',
'µ', 'microsecond' => 'H:i:s.u',
default => throw new UnitException('Precision unit expected among: minute, second, millisecond and microsecond.'),
};
}
/**
* Format the instance as date and time T-separated with no timezone
*
* @example
* ```
* echo Carbon::now()->toDateTimeLocalString();
* echo "\n";
* echo Carbon::now()->toDateTimeLocalString('minute'); // You can specify precision among: minute, second, millisecond and microsecond
* ```
*/
public function toDateTimeLocalString(string $unitPrecision = 'second'): string
{
return $this->rawFormat('Y-m-d\T'.static::getTimeFormatByPrecision($unitPrecision));
}
/**
* Format the instance with day, date and time
*
* @example
* ```
* echo Carbon::now()->toDayDateTimeString();
* ```
*/
public function toDayDateTimeString(): string
{
return $this->rawFormat('D, M j, Y g:i A');
}
/**
* Format the instance as ATOM
*
* @example
* ```
* echo Carbon::now()->toAtomString();
* ```
*/
public function toAtomString(): string
{
return $this->rawFormat(DateTime::ATOM);
}
/**
* Format the instance as COOKIE
*
* @example
* ```
* echo Carbon::now()->toCookieString();
* ```
*/
public function toCookieString(): string
{
return $this->rawFormat(DateTimeInterface::COOKIE);
}
/**
* Format the instance as ISO8601
*
* @example
* ```
* echo Carbon::now()->toIso8601String();
* ```
*/
public function toIso8601String(): string
{
return $this->toAtomString();
}
/**
* Format the instance as RFC822
*
* @example
* ```
* echo Carbon::now()->toRfc822String();
* ```
*/
public function toRfc822String(): string
{
return $this->rawFormat(DateTimeInterface::RFC822);
}
/**
* Convert the instance to UTC and return as Zulu ISO8601
*
* @example
* ```
* echo Carbon::now()->toIso8601ZuluString();
* ```
*/
public function toIso8601ZuluString(string $unitPrecision = 'second'): string
{
return $this->avoidMutation()
->utc()
->rawFormat('Y-m-d\T'.static::getTimeFormatByPrecision($unitPrecision).'\Z');
}
/**
* Format the instance as RFC850
*
* @example
* ```
* echo Carbon::now()->toRfc850String();
* ```
*/
public function toRfc850String(): string
{
return $this->rawFormat(DateTimeInterface::RFC850);
}
/**
* Format the instance as RFC1036
*
* @example
* ```
* echo Carbon::now()->toRfc1036String();
* ```
*/
public function toRfc1036String(): string
{
return $this->rawFormat(DateTimeInterface::RFC1036);
}
/**
* Format the instance as RFC1123
*
* @example
* ```
* echo Carbon::now()->toRfc1123String();
* ```
*/
public function toRfc1123String(): string
{
return $this->rawFormat(DateTimeInterface::RFC1123);
}
/**
* Format the instance as RFC2822
*
* @example
* ```
* echo Carbon::now()->toRfc2822String();
* ```
*/
public function toRfc2822String(): string
{
return $this->rawFormat(DateTimeInterface::RFC2822);
}
/**
* Format the instance as RFC3339.
*
* @example
* ```
* echo Carbon::now()->toRfc3339String() . "\n";
* echo Carbon::now()->toRfc3339String(true) . "\n";
* ```
*/
public function toRfc3339String(bool $extended = false): string
{
return $this->rawFormat($extended ? DateTimeInterface::RFC3339_EXTENDED : DateTimeInterface::RFC3339);
}
/**
* Format the instance as RSS
*
* @example
* ```
* echo Carbon::now()->toRssString();
* ```
*/
public function toRssString(): string
{
return $this->rawFormat(DateTimeInterface::RSS);
}
/**
* Format the instance as W3C
*
* @example
* ```
* echo Carbon::now()->toW3cString();
* ```
*/
public function toW3cString(): string
{
return $this->rawFormat(DateTimeInterface::W3C);
}
/**
* Format the instance as RFC7231
*
* @example
* ```
* echo Carbon::now()->toRfc7231String();
* ```
*/
public function toRfc7231String(): string
{
return $this->avoidMutation()
->setTimezone('GMT')
->rawFormat(\defined('static::RFC7231_FORMAT') ? static::RFC7231_FORMAT : CarbonInterface::RFC7231_FORMAT);
}
/**
* Get default array representation.
*
* @example
* ```
* var_dump(Carbon::now()->toArray());
* ```
*/
public function toArray(): array
{
return [
'year' => $this->year,
'month' => $this->month,
'day' => $this->day,
'dayOfWeek' => $this->dayOfWeek,
'dayOfYear' => $this->dayOfYear,
'hour' => $this->hour,
'minute' => $this->minute,
'second' => $this->second,
'micro' => $this->micro,
'timestamp' => $this->timestamp,
'formatted' => $this->rawFormat(\defined('static::DEFAULT_TO_STRING_FORMAT') ? static::DEFAULT_TO_STRING_FORMAT : CarbonInterface::DEFAULT_TO_STRING_FORMAT),
'timezone' => $this->timezone,
];
}
/**
* Get default object representation.
*
* @example
* ```
* var_dump(Carbon::now()->toObject());
* ```
*/
public function toObject(): object
{
return (object) $this->toArray();
}
/**
* Returns english human-readable complete date string.
*
* @example
* ```
* echo Carbon::now()->toString();
* ```
*/
public function toString(): string
{
return $this->avoidMutation()->locale('en')->isoFormat('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');
}
/**
* Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z, if $keepOffset truthy, offset will be kept:
* 1977-04-22T01:00:00-05:00).
*
* @example
* ```
* echo Carbon::now('America/Toronto')->toISOString() . "\n";
* echo Carbon::now('America/Toronto')->toISOString(true) . "\n";
* ```
*
* @param bool $keepOffset Pass true to keep the date offset. Else forced to UTC.
*/
public function toISOString(bool $keepOffset = false): ?string
{
if (!$this->isValid()) {
return null;
}
$yearFormat = $this->year < 0 || $this->year > 9999 ? 'YYYYYY' : 'YYYY';
$timezoneFormat = $keepOffset ? 'Z' : '[Z]';
$date = $keepOffset ? $this : $this->avoidMutation()->utc();
return $date->isoFormat("$yearFormat-MM-DD[T]HH:mm:ss.SSSSSS$timezoneFormat");
}
/**
* Return the ISO-8601 string (ex: 1977-04-22T06:00:00Z) with UTC timezone.
*
* @example
* ```
* echo Carbon::now('America/Toronto')->toJSON();
* ```
*/
public function toJSON(): ?string
{
return $this->toISOString();
}
/**
* Return native DateTime PHP object matching the current instance.
*
* @example
* ```
* var_dump(Carbon::now()->toDateTime());
* ```
*/
public function toDateTime(): DateTime
{
return DateTime::createFromFormat('U.u', $this->rawFormat('U.u'))
->setTimezone($this->getTimezone());
}
/**
* Return native toDateTimeImmutable PHP object matching the current instance.
*
* @example
* ```
* var_dump(Carbon::now()->toDateTimeImmutable());
* ```
*/
public function toDateTimeImmutable(): DateTimeImmutable
{
return DateTimeImmutable::createFromFormat('U.u', $this->rawFormat('U.u'))
->setTimezone($this->getTimezone());
}
/**
* @alias toDateTime
*
* Return native DateTime PHP object matching the current instance.
*
* @example
* ```
* var_dump(Carbon::now()->toDate());
* ```
*/
public function toDate(): DateTime
{
return $this->toDateTime();
}
/**
* Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
*
* @param \DateTimeInterface|Carbon|CarbonImmutable|int|null $end period end date or recurrences count if int
* @param int|\DateInterval|string|null $interval period default interval or number of the given $unit
* @param string|null $unit if specified, $interval must be an integer
*/
public function toPeriod($end = null, $interval = null, $unit = null): CarbonPeriod
{
if ($unit) {
$interval = CarbonInterval::make("$interval ".static::pluralUnit($unit));
}
$isDefaultInterval = !$interval;
$interval ??= CarbonInterval::day();
$class = $this->isMutable() ? CarbonPeriod::class : CarbonPeriodImmutable::class;
if (\is_int($end) || (\is_string($end) && ctype_digit($end))) {
$end = (int) $end;
}
$end ??= 1;
if (!\is_int($end)) {
$end = $this->resolveCarbon($end);
}
return new $class(
raw: [$this, CarbonInterval::make($interval), $end],
dateClass: static::class,
isDefaultInterval: $isDefaultInterval,
);
}
/**
* Create a iterable CarbonPeriod object from current date to a given end date (and optional interval).
*
* @param \DateTimeInterface|Carbon|CarbonImmutable|null $end period end date
* @param int|\DateInterval|string|null $interval period default interval or number of the given $unit
* @param string|null $unit if specified, $interval must be an integer
*/
public function range($end = null, $interval = null, $unit = null): CarbonPeriod
{
return $this->toPeriod($end, $interval, $unit);
}
}
src/Carbon/Traits/Creator.php 0000644 00000076566 14753612052 0012146 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\Carbon;
use Carbon\CarbonImmutable;
use Carbon\CarbonInterface;
use Carbon\Exceptions\InvalidDateException;
use Carbon\Exceptions\InvalidFormatException;
use Carbon\Exceptions\InvalidTimeZoneException;
use Carbon\Exceptions\OutOfRangeException;
use Carbon\Exceptions\UnitException;
use Carbon\Month;
use Carbon\Translator;
use Carbon\WeekDay;
use Closure;
use DateMalformedStringException;
use DateTimeImmutable;
use DateTimeInterface;
use DateTimeZone;
use Exception;
use ReturnTypeWillChange;
use Symfony\Contracts\Translation\TranslatorInterface;
/**
* Trait Creator.
*
* Static creators.
*
* Depends on the following methods:
*
* @method static Carbon|CarbonImmutable getTestNow()
*/
trait Creator
{
use ObjectInitialisation;
use LocalFactory;
/**
* The errors that can occur.
*/
protected static ?array $lastErrors = null;
/**
* Create a new Carbon instance.
*
* Please see the testing aids section (specifically static::setTestNow())
* for more on the possibility of this constructor returning a test instance.
*
* @throws InvalidFormatException
*/
public function __construct(
DateTimeInterface|WeekDay|Month|string|int|float|null $time = null,
DateTimeZone|string|int|null $timezone = null,
) {
$this->initLocalFactory();
if ($time instanceof Month) {
$time = $time->name.' 1';
} elseif ($time instanceof WeekDay) {
$time = $time->name;
} elseif ($time instanceof DateTimeInterface) {
$time = $this->constructTimezoneFromDateTime($time, $timezone)->format('Y-m-d H:i:s.u');
}
if (\is_string($time) && str_starts_with($time, '@')) {
$time = static::createFromTimestampUTC(substr($time, 1))->format('Y-m-d\TH:i:s.uP');
} elseif (is_numeric($time) && (!\is_string($time) || !preg_match('/^\d{1,14}$/', $time))) {
$time = static::createFromTimestampUTC($time)->format('Y-m-d\TH:i:s.uP');
}
// If the class has a test now set, and we are trying to create a now()
// instance then override as required
$isNow = \in_array($time, [null, '', 'now'], true);
$timezone = static::safeCreateDateTimeZone($timezone) ?? null;
if (
($this->clock || (
method_exists(static::class, 'hasTestNow') &&
method_exists(static::class, 'getTestNow') &&
static::hasTestNow()
)) &&
($isNow || static::hasRelativeKeywords($time))
) {
$this->mockConstructorParameters($time, $timezone);
}
try {
parent::__construct($time ?? 'now', $timezone);
} catch (Exception $exception) {
throw new InvalidFormatException($exception->getMessage(), 0, $exception);
}
$this->constructedObjectId = spl_object_hash($this);
self::setLastErrors(parent::getLastErrors());
}
/**
* Get timezone from a datetime instance.
*/
private function constructTimezoneFromDateTime(
DateTimeInterface $date,
DateTimeZone|string|int|null &$timezone,
): DateTimeInterface {
if ($timezone !== null) {
$safeTz = static::safeCreateDateTimeZone($timezone);
if ($safeTz) {
$date = ($date instanceof DateTimeImmutable ? $date : clone $date)->setTimezone($safeTz);
}
return $date;
}
$timezone = $date->getTimezone();
return $date;
}
/**
* Update constructedObjectId on cloned.
*/
public function __clone(): void
{
$this->constructedObjectId = spl_object_hash($this);
}
/**
* Create a Carbon instance from a DateTime one.
*/
public static function instance(DateTimeInterface $date): static
{
if ($date instanceof static) {
return clone $date;
}
$instance = parent::createFromFormat('U.u', $date->format('U.u'))
->setTimezone($date->getTimezone());
if ($date instanceof CarbonInterface) {
$settings = $date->getSettings();
if (!$date->hasLocalTranslator()) {
unset($settings['locale']);
}
$instance->settings($settings);
}
return $instance;
}
/**
* Create a carbon instance from a string.
*
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
*
* @throws InvalidFormatException
*/
public static function rawParse(
DateTimeInterface|WeekDay|Month|string|int|float|null $time,
DateTimeZone|string|int|null $timezone = null,
): static {
if ($time instanceof DateTimeInterface) {
return static::instance($time);
}
try {
return new static($time, $timezone);
} catch (Exception $exception) {
// @codeCoverageIgnoreStart
try {
$date = @static::now($timezone)->change($time);
} catch (DateMalformedStringException|InvalidFormatException) {
$date = null;
}
// @codeCoverageIgnoreEnd
return $date
?? throw new InvalidFormatException("Could not parse '$time': ".$exception->getMessage(), 0, $exception);
}
}
/**
* Create a carbon instance from a string.
*
* This is an alias for the constructor that allows better fluent syntax
* as it allows you to do Carbon::parse('Monday next week')->fn() rather
* than (new Carbon('Monday next week'))->fn().
*
* @throws InvalidFormatException
*/
public static function parse(
DateTimeInterface|WeekDay|Month|string|int|float|null $time,
DateTimeZone|string|int|null $timezone = null,
): static {
$function = static::$parseFunction;
if (!$function) {
return static::rawParse($time, $timezone);
}
if (\is_string($function) && method_exists(static::class, $function)) {
$function = [static::class, $function];
}
return $function(...\func_get_args());
}
/**
* Create a carbon instance from a localized string (in French, Japanese, Arabic, etc.).
*
* @param string $time date/time string in the given language (may also contain English).
* @param string|null $locale if locale is null or not specified, current global locale will be
* used instead.
* @param DateTimeZone|string|int|null $timezone optional timezone for the new instance.
*
* @throws InvalidFormatException
*/
public static function parseFromLocale(
string $time,
?string $locale = null,
DateTimeZone|string|int|null $timezone = null,
): static {
return static::rawParse(static::translateTimeString($time, $locale, static::DEFAULT_LOCALE), $timezone);
}
/**
* Get a Carbon instance for the current date and time.
*/
public static function now(DateTimeZone|string|int|null $timezone = null): static
{
return new static(null, $timezone);
}
/**
* Create a Carbon instance for today.
*/
public static function today(DateTimeZone|string|int|null $timezone = null): static
{
return static::rawParse('today', $timezone);
}
/**
* Create a Carbon instance for tomorrow.
*/
public static function tomorrow(DateTimeZone|string|int|null $timezone = null): static
{
return static::rawParse('tomorrow', $timezone);
}
/**
* Create a Carbon instance for yesterday.
*/
public static function yesterday(DateTimeZone|string|int|null $timezone = null): static
{
return static::rawParse('yesterday', $timezone);
}
private static function assertBetween($unit, $value, $min, $max): void
{
if (static::isStrictModeEnabled() && ($value < $min || $value > $max)) {
throw new OutOfRangeException($unit, $min, $max, $value);
}
}
private static function createNowInstance($timezone)
{
if (!static::hasTestNow()) {
return static::now($timezone);
}
$now = static::getTestNow();
if ($now instanceof Closure) {
return $now(static::now($timezone));
}
$now = $now->avoidMutation();
return $timezone === null ? $now : $now->setTimezone($timezone);
}
/**
* Create a new Carbon instance from a specific date and time.
*
* If any of $year, $month or $day are set to null their now() values will
* be used.
*
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
*
* If $hour is not null then the default values for $minute and $second
* will be 0.
*
* @param DateTimeInterface|string|int|null $year
* @param int|null $month
* @param int|null $day
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function create($year = 0, $month = 1, $day = 1, $hour = 0, $minute = 0, $second = 0, $timezone = null): ?self
{
$month = self::monthToInt($month);
if ((\is_string($year) && !is_numeric($year)) || $year instanceof DateTimeInterface) {
return static::parse($year, $timezone ?? (\is_string($month) || $month instanceof DateTimeZone ? $month : null));
}
$defaults = null;
$getDefault = function ($unit) use ($timezone, &$defaults) {
if ($defaults === null) {
$now = self::createNowInstance($timezone);
$defaults = array_combine([
'year',
'month',
'day',
'hour',
'minute',
'second',
], explode('-', $now->rawFormat('Y-n-j-G-i-s.u')));
}
return $defaults[$unit];
};
$year = $year ?? $getDefault('year');
$month = $month ?? $getDefault('month');
$day = $day ?? $getDefault('day');
$hour = $hour ?? $getDefault('hour');
$minute = $minute ?? $getDefault('minute');
$second = (float) ($second ?? $getDefault('second'));
self::assertBetween('month', $month, 0, 99);
self::assertBetween('day', $day, 0, 99);
self::assertBetween('hour', $hour, 0, 99);
self::assertBetween('minute', $minute, 0, 99);
self::assertBetween('second', $second, 0, 99);
$fixYear = null;
if ($year < 0) {
$fixYear = $year;
$year = 0;
} elseif ($year > 9999) {
$fixYear = $year - 9999;
$year = 9999;
}
$second = ($second < 10 ? '0' : '').number_format($second, 6);
$instance = static::rawCreateFromFormat('!Y-n-j G:i:s.u', \sprintf('%s-%s-%s %s:%02s:%02s', $year, $month, $day, $hour, $minute, $second), $timezone);
if ($instance && $fixYear !== null) {
$instance = $instance->addYears($fixYear);
}
return $instance ?? null;
}
/**
* Create a new safe Carbon instance from a specific date and time.
*
* If any of $year, $month or $day are set to null their now() values will
* be used.
*
* If $hour is null it will be set to its now() value and the default
* values for $minute and $second will be their now() values.
*
* If $hour is not null then the default values for $minute and $second
* will be 0.
*
* If one of the set values is not valid, an InvalidDateException
* will be thrown.
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidDateException
*
* @return static|null
*/
public static function createSafe($year = null, $month = null, $day = null, $hour = null, $minute = null, $second = null, $timezone = null): ?self
{
$month = self::monthToInt($month);
$fields = static::getRangesByUnit();
foreach ($fields as $field => $range) {
if ($$field !== null && (!\is_int($$field) || $$field < $range[0] || $$field > $range[1])) {
if (static::isStrictModeEnabled()) {
throw new InvalidDateException($field, $$field);
}
return null;
}
}
$instance = static::create($year, $month, $day, $hour, $minute, $second, $timezone);
foreach (array_reverse($fields) as $field => $range) {
if ($$field !== null && (!\is_int($$field) || $$field !== $instance->$field)) {
if (static::isStrictModeEnabled()) {
throw new InvalidDateException($field, $$field);
}
return null;
}
}
return $instance;
}
/**
* Create a new Carbon instance from a specific date and time using strict validation.
*
* @see create()
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createStrict(?int $year = 0, ?int $month = 1, ?int $day = 1, ?int $hour = 0, ?int $minute = 0, ?int $second = 0, $timezone = null): static
{
$initialStrictMode = static::isStrictModeEnabled();
static::useStrictMode(true);
try {
$date = static::create($year, $month, $day, $hour, $minute, $second, $timezone);
} finally {
static::useStrictMode($initialStrictMode);
}
return $date;
}
/**
* Create a Carbon instance from just a date. The time portion is set to now.
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createFromDate($year = null, $month = null, $day = null, $timezone = null)
{
return static::create($year, $month, $day, null, null, null, $timezone);
}
/**
* Create a Carbon instance from just a date. The time portion is set to midnight.
*
* @param int|null $year
* @param int|null $month
* @param int|null $day
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createMidnightDate($year = null, $month = null, $day = null, $timezone = null)
{
return static::create($year, $month, $day, 0, 0, 0, $timezone);
}
/**
* Create a Carbon instance from just a time. The date portion is set to today.
*
* @param int|null $hour
* @param int|null $minute
* @param int|null $second
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static
*/
public static function createFromTime($hour = 0, $minute = 0, $second = 0, $timezone = null): static
{
return static::create(null, null, null, $hour, $minute, $second, $timezone);
}
/**
* Create a Carbon instance from a time string. The date portion is set to today.
*
* @throws InvalidFormatException
*/
public static function createFromTimeString(string $time, DateTimeZone|string|int|null $timezone = null): static
{
return static::today($timezone)->setTimeFromTimeString($time);
}
private static function createFromFormatAndTimezone(
string $format,
string $time,
DateTimeZone|string|int|null $originalTimezone,
): ?DateTimeInterface {
if ($originalTimezone === null) {
return parent::createFromFormat($format, $time) ?: null;
}
$timezone = \is_int($originalTimezone) ? self::getOffsetTimezone($originalTimezone) : $originalTimezone;
$timezone = static::safeCreateDateTimeZone($timezone, $originalTimezone);
return parent::createFromFormat($format, $time, $timezone) ?: null;
}
private static function getOffsetTimezone(int $offset): string
{
$minutes = (int) ($offset * static::MINUTES_PER_HOUR * static::SECONDS_PER_MINUTE);
return @timezone_name_from_abbr('', $minutes, 1) ?: throw new InvalidTimeZoneException(
"Invalid offset timezone $offset",
);
}
/**
* Create a Carbon instance from a specific format.
*
* @param string $format Datetime format
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function rawCreateFromFormat(string $format, string $time, $timezone = null): ?self
{
// Work-around for https://bugs.php.net/bug.php?id=80141
$format = preg_replace('/(?getTimezone();
}
$mock = $mock->copy();
// Prepend mock datetime only if the format does not contain non escaped unix epoch reset flag.
if (!preg_match("/{$nonEscaped}[!|]/", $format)) {
if (preg_match('/[HhGgisvuB]/', $format)) {
$mock = $mock->setTime(0, 0);
}
$format = static::MOCK_DATETIME_FORMAT.' '.$format;
$time = ($mock instanceof self ? $mock->rawFormat(static::MOCK_DATETIME_FORMAT) : $mock->format(static::MOCK_DATETIME_FORMAT)).' '.$time;
}
// Regenerate date from the modified format to base result on the mocked instance instead of now.
$date = self::createFromFormatAndTimezone($format, $time, $timezone);
}
if ($date instanceof DateTimeInterface) {
$instance = static::instance($date);
$instance::setLastErrors($lastErrors);
return $instance;
}
if (static::isStrictModeEnabled()) {
throw new InvalidFormatException(implode(PHP_EOL, (array) $lastErrors['errors']));
}
return null;
}
/**
* Create a Carbon instance from a specific format.
*
* @param string $format Datetime format
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
#[ReturnTypeWillChange]
public static function createFromFormat($format, $time, $timezone = null): ?self
{
$function = static::$createFromFormatFunction;
// format is a single numeric unit
if (\is_int($time) && \in_array(ltrim($format, '!'), ['U', 'Y', 'y', 'X', 'x', 'm', 'n', 'd', 'j', 'w', 'W', 'H', 'h', 'G', 'g', 'i', 's', 'u', 'z', 'v'], true)) {
$time = (string) $time;
}
if (!\is_string($time)) {
@trigger_error(
'createFromFormat() $time parameter will only accept string or integer for 1-letter format representing a numeric unit in the next version',
\E_USER_DEPRECATED,
);
$time = (string) $time;
}
if (!$function) {
return static::rawCreateFromFormat($format, $time, $timezone);
}
if (\is_string($function) && method_exists(static::class, $function)) {
$function = [static::class, $function];
}
return $function(...\func_get_args());
}
/**
* Create a Carbon instance from a specific ISO format (same replacements as ->isoFormat()).
*
* @param string $format Datetime format
* @param string $time
* @param DateTimeZone|string|int|null $timezone optional timezone
* @param string|null $locale locale to be used for LTS, LT, LL, LLL, etc. macro-formats (en by fault, unneeded if no such macro-format in use)
* @param TranslatorInterface|null $translator optional custom translator to use for macro-formats
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function createFromIsoFormat(
string $format,
string $time,
$timezone = null,
?string $locale = self::DEFAULT_LOCALE,
?TranslatorInterface $translator = null
): ?self {
$format = preg_replace_callback('/(? static::getTranslationMessageWith($translator, 'formats.LT', $locale),
'LTS' => static::getTranslationMessageWith($translator, 'formats.LTS', $locale),
'L' => static::getTranslationMessageWith($translator, 'formats.L', $locale),
'LL' => static::getTranslationMessageWith($translator, 'formats.LL', $locale),
'LLL' => static::getTranslationMessageWith($translator, 'formats.LLL', $locale),
'LLLL' => static::getTranslationMessageWith($translator, 'formats.LLLL', $locale),
];
}
return $formats[$code] ?? preg_replace_callback(
'/MMMM|MM|DD|dddd/',
static fn (array $code) => mb_substr($code[0], 1),
$formats[strtoupper($code)] ?? '',
);
}, $format);
$format = preg_replace_callback('/(? 'd',
'OM' => 'M',
'OY' => 'Y',
'OH' => 'G',
'Oh' => 'g',
'Om' => 'i',
'Os' => 's',
'D' => 'd',
'DD' => 'd',
'Do' => 'd',
'd' => '!',
'dd' => '!',
'ddd' => 'D',
'dddd' => 'D',
'DDD' => 'z',
'DDDD' => 'z',
'DDDo' => 'z',
'e' => '!',
'E' => '!',
'H' => 'G',
'HH' => 'H',
'h' => 'g',
'hh' => 'h',
'k' => 'G',
'kk' => 'G',
'hmm' => 'gi',
'hmmss' => 'gis',
'Hmm' => 'Gi',
'Hmmss' => 'Gis',
'm' => 'i',
'mm' => 'i',
'a' => 'a',
'A' => 'a',
's' => 's',
'ss' => 's',
'S' => '*',
'SS' => '*',
'SSS' => '*',
'SSSS' => '*',
'SSSSS' => '*',
'SSSSSS' => 'u',
'SSSSSSS' => 'u*',
'SSSSSSSS' => 'u*',
'SSSSSSSSS' => 'u*',
'M' => 'm',
'MM' => 'm',
'MMM' => 'M',
'MMMM' => 'M',
'Mo' => 'm',
'Q' => '!',
'Qo' => '!',
'G' => '!',
'GG' => '!',
'GGG' => '!',
'GGGG' => '!',
'GGGGG' => '!',
'g' => '!',
'gg' => '!',
'ggg' => '!',
'gggg' => '!',
'ggggg' => '!',
'W' => '!',
'WW' => '!',
'Wo' => '!',
'w' => '!',
'ww' => '!',
'wo' => '!',
'x' => 'U???',
'X' => 'U',
'Y' => 'Y',
'YY' => 'y',
'YYYY' => 'Y',
'YYYYY' => 'Y',
'YYYYYY' => 'Y',
'z' => 'e',
'zz' => 'e',
'Z' => 'e',
'ZZ' => 'e',
];
}
$format = $replacements[$code] ?? '?';
if ($format === '!') {
throw new InvalidFormatException("Format $code not supported for creation.");
}
return $format;
}, $format);
return static::rawCreateFromFormat($format, $time, $timezone);
}
/**
* Create a Carbon instance from a specific format and a string in a given language.
*
* @param string $format Datetime format
* @param string $locale
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function createFromLocaleFormat(string $format, string $locale, string $time, $timezone = null): ?self
{
$format = preg_replace_callback(
'/(?:\\\\[a-zA-Z]|[bfkqCEJKQRV]){2,}/',
static function (array $match) use ($locale): string {
$word = str_replace('\\', '', $match[0]);
$translatedWord = static::translateTimeString($word, $locale, static::DEFAULT_LOCALE);
return $word === $translatedWord
? $match[0]
: preg_replace('/[a-zA-Z]/', '\\\\$0', $translatedWord);
},
$format
);
return static::rawCreateFromFormat($format, static::translateTimeString($time, $locale, static::DEFAULT_LOCALE), $timezone);
}
/**
* Create a Carbon instance from a specific ISO format and a string in a given language.
*
* @param string $format Datetime ISO format
* @param string $locale
* @param string $time
* @param DateTimeZone|string|int|null $timezone
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function createFromLocaleIsoFormat(string $format, string $locale, string $time, $timezone = null): ?self
{
$time = static::translateTimeString($time, $locale, static::DEFAULT_LOCALE, CarbonInterface::TRANSLATE_MONTHS | CarbonInterface::TRANSLATE_DAYS | CarbonInterface::TRANSLATE_MERIDIEM);
return static::createFromIsoFormat($format, $time, $timezone, $locale);
}
/**
* Make a Carbon instance from given variable if possible.
*
* Always return a new instance. Parse only strings and only these likely to be dates (skip intervals
* and recurrences). Throw an exception for invalid format, but otherwise return null.
*
* @param mixed $var
*
* @throws InvalidFormatException
*
* @return static|null
*/
public static function make($var, DateTimeZone|string|null $timezone = null): ?self
{
if ($var instanceof DateTimeInterface) {
return static::instance($var);
}
$date = null;
if (\is_string($var)) {
$var = trim($var);
if (!preg_match('/^P[\dT]/', $var) &&
!preg_match('/^R\d/', $var) &&
preg_match('/[a-z\d]/i', $var)
) {
$date = static::parse($var, $timezone);
}
}
return $date;
}
/**
* Set last errors.
*
* @param array|bool $lastErrors
*
* @return void
*/
private static function setLastErrors($lastErrors): void
{
if (\is_array($lastErrors) || $lastErrors === false) {
static::$lastErrors = \is_array($lastErrors) ? $lastErrors : [
'warning_count' => 0,
'warnings' => [],
'error_count' => 0,
'errors' => [],
];
}
}
/**
* {@inheritdoc}
*/
public static function getLastErrors(): array|false
{
return static::$lastErrors ?? false;
}
private static function monthToInt(mixed $value, string $unit = 'month'): mixed
{
if ($value instanceof Month) {
if ($unit !== 'month') {
throw new UnitException("Month enum cannot be used to set $unit");
}
return Month::int($value);
}
return $value;
}
}
src/Carbon/Traits/Date.php 0000644 00000710154 14753612052 0011410 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use BadMethodCallException;
use Carbon\Carbon;
use Carbon\CarbonInterface;
use Carbon\CarbonPeriod;
use Carbon\CarbonTimeZone;
use Carbon\Exceptions\BadComparisonUnitException;
use Carbon\Exceptions\ImmutableException;
use Carbon\Exceptions\InvalidTimeZoneException;
use Carbon\Exceptions\UnitException;
use Carbon\Exceptions\UnknownGetterException;
use Carbon\Exceptions\UnknownMethodException;
use Carbon\Exceptions\UnknownSetterException;
use Carbon\Exceptions\UnknownUnitException;
use Carbon\FactoryImmutable;
use Carbon\Month;
use Carbon\Translator;
use Carbon\Unit;
use Carbon\WeekDay;
use Closure;
use DateInterval;
use DatePeriod;
use DateTime;
use DateTimeImmutable;
use DateTimeInterface;
use DateTimeZone;
use Generator;
use InvalidArgumentException;
use ReflectionException;
use Symfony\Component\Clock\NativeClock;
use Throwable;
/**
* A simple API extension for DateTime.
*
*
*
* @property string $localeDayOfWeek the day of week in current locale
* @property string $shortLocaleDayOfWeek the abbreviated day of week in current locale
* @property string $localeMonth the month in current locale
* @property string $shortLocaleMonth the abbreviated month in current locale
* @property int $year
* @property int $yearIso
* @property int $month
* @property int $day
* @property int $hour
* @property int $minute
* @property int $second
* @property int $micro
* @property int $microsecond
* @property int $dayOfWeekIso 1 (for Monday) through 7 (for Sunday)
* @property int|float|string $timestamp seconds since the Unix Epoch
* @property string $englishDayOfWeek the day of week in English
* @property string $shortEnglishDayOfWeek the abbreviated day of week in English
* @property string $englishMonth the month in English
* @property string $shortEnglishMonth the abbreviated month in English
* @property int $milliseconds
* @property int $millisecond
* @property int $milli
* @property int $week 1 through 53
* @property int $isoWeek 1 through 53
* @property int $weekYear year according to week format
* @property int $isoWeekYear year according to ISO week format
* @property int $age does a diffInYears() with default parameters
* @property int $offset the timezone offset in seconds from UTC
* @property int $offsetMinutes the timezone offset in minutes from UTC
* @property int $offsetHours the timezone offset in hours from UTC
* @property CarbonTimeZone $timezone the current timezone
* @property CarbonTimeZone $tz alias of $timezone
* @property int $centuryOfMillennium The value of the century starting from the beginning of the current millennium
* @property int $dayOfCentury The value of the day starting from the beginning of the current century
* @property int $dayOfDecade The value of the day starting from the beginning of the current decade
* @property int $dayOfMillennium The value of the day starting from the beginning of the current millennium
* @property int $dayOfMonth The value of the day starting from the beginning of the current month
* @property int $dayOfQuarter The value of the day starting from the beginning of the current quarter
* @property int $dayOfWeek 0 (for Sunday) through 6 (for Saturday)
* @property int $dayOfYear 1 through 366
* @property int $decadeOfCentury The value of the decade starting from the beginning of the current century
* @property int $decadeOfMillennium The value of the decade starting from the beginning of the current millennium
* @property int $hourOfCentury The value of the hour starting from the beginning of the current century
* @property int $hourOfDay The value of the hour starting from the beginning of the current day
* @property int $hourOfDecade The value of the hour starting from the beginning of the current decade
* @property int $hourOfMillennium The value of the hour starting from the beginning of the current millennium
* @property int $hourOfMonth The value of the hour starting from the beginning of the current month
* @property int $hourOfQuarter The value of the hour starting from the beginning of the current quarter
* @property int $hourOfWeek The value of the hour starting from the beginning of the current week
* @property int $hourOfYear The value of the hour starting from the beginning of the current year
* @property int $microsecondOfCentury The value of the microsecond starting from the beginning of the current century
* @property int $microsecondOfDay The value of the microsecond starting from the beginning of the current day
* @property int $microsecondOfDecade The value of the microsecond starting from the beginning of the current decade
* @property int $microsecondOfHour The value of the microsecond starting from the beginning of the current hour
* @property int $microsecondOfMillennium The value of the microsecond starting from the beginning of the current millennium
* @property int $microsecondOfMillisecond The value of the microsecond starting from the beginning of the current millisecond
* @property int $microsecondOfMinute The value of the microsecond starting from the beginning of the current minute
* @property int $microsecondOfMonth The value of the microsecond starting from the beginning of the current month
* @property int $microsecondOfQuarter The value of the microsecond starting from the beginning of the current quarter
* @property int $microsecondOfSecond The value of the microsecond starting from the beginning of the current second
* @property int $microsecondOfWeek The value of the microsecond starting from the beginning of the current week
* @property int $microsecondOfYear The value of the microsecond starting from the beginning of the current year
* @property int $millisecondOfCentury The value of the millisecond starting from the beginning of the current century
* @property int $millisecondOfDay The value of the millisecond starting from the beginning of the current day
* @property int $millisecondOfDecade The value of the millisecond starting from the beginning of the current decade
* @property int $millisecondOfHour The value of the millisecond starting from the beginning of the current hour
* @property int $millisecondOfMillennium The value of the millisecond starting from the beginning of the current millennium
* @property int $millisecondOfMinute The value of the millisecond starting from the beginning of the current minute
* @property int $millisecondOfMonth The value of the millisecond starting from the beginning of the current month
* @property int $millisecondOfQuarter The value of the millisecond starting from the beginning of the current quarter
* @property int $millisecondOfSecond The value of the millisecond starting from the beginning of the current second
* @property int $millisecondOfWeek The value of the millisecond starting from the beginning of the current week
* @property int $millisecondOfYear The value of the millisecond starting from the beginning of the current year
* @property int $minuteOfCentury The value of the minute starting from the beginning of the current century
* @property int $minuteOfDay The value of the minute starting from the beginning of the current day
* @property int $minuteOfDecade The value of the minute starting from the beginning of the current decade
* @property int $minuteOfHour The value of the minute starting from the beginning of the current hour
* @property int $minuteOfMillennium The value of the minute starting from the beginning of the current millennium
* @property int $minuteOfMonth The value of the minute starting from the beginning of the current month
* @property int $minuteOfQuarter The value of the minute starting from the beginning of the current quarter
* @property int $minuteOfWeek The value of the minute starting from the beginning of the current week
* @property int $minuteOfYear The value of the minute starting from the beginning of the current year
* @property int $monthOfCentury The value of the month starting from the beginning of the current century
* @property int $monthOfDecade The value of the month starting from the beginning of the current decade
* @property int $monthOfMillennium The value of the month starting from the beginning of the current millennium
* @property int $monthOfQuarter The value of the month starting from the beginning of the current quarter
* @property int $monthOfYear The value of the month starting from the beginning of the current year
* @property int $quarterOfCentury The value of the quarter starting from the beginning of the current century
* @property int $quarterOfDecade The value of the quarter starting from the beginning of the current decade
* @property int $quarterOfMillennium The value of the quarter starting from the beginning of the current millennium
* @property int $quarterOfYear The value of the quarter starting from the beginning of the current year
* @property int $secondOfCentury The value of the second starting from the beginning of the current century
* @property int $secondOfDay The value of the second starting from the beginning of the current day
* @property int $secondOfDecade The value of the second starting from the beginning of the current decade
* @property int $secondOfHour The value of the second starting from the beginning of the current hour
* @property int $secondOfMillennium The value of the second starting from the beginning of the current millennium
* @property int $secondOfMinute The value of the second starting from the beginning of the current minute
* @property int $secondOfMonth The value of the second starting from the beginning of the current month
* @property int $secondOfQuarter The value of the second starting from the beginning of the current quarter
* @property int $secondOfWeek The value of the second starting from the beginning of the current week
* @property int $secondOfYear The value of the second starting from the beginning of the current year
* @property int $weekOfCentury The value of the week starting from the beginning of the current century
* @property int $weekOfDecade The value of the week starting from the beginning of the current decade
* @property int $weekOfMillennium The value of the week starting from the beginning of the current millennium
* @property int $weekOfMonth 1 through 5
* @property int $weekOfQuarter The value of the week starting from the beginning of the current quarter
* @property int $weekOfYear ISO-8601 week number of year, weeks starting on Monday
* @property int $yearOfCentury The value of the year starting from the beginning of the current century
* @property int $yearOfDecade The value of the year starting from the beginning of the current decade
* @property int $yearOfMillennium The value of the year starting from the beginning of the current millennium
* @property-read string $latinMeridiem "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
* @property-read string $latinUpperMeridiem "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
* @property-read string $timezoneAbbreviatedName the current timezone abbreviated name
* @property-read string $tzAbbrName alias of $timezoneAbbreviatedName
* @property-read string $dayName long name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortDayName short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $minDayName very short name of weekday translated according to Carbon locale, in english if no translation available for current language
* @property-read string $monthName long name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $shortMonthName short name of month translated according to Carbon locale, in english if no translation available for current language
* @property-read string $meridiem lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read string $upperMeridiem uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
* @property-read int $noZeroHour current hour from 1 to 24
* @property-read int $isoWeeksInYear 51 through 53
* @property-read int $weekNumberInMonth 1 through 5
* @property-read int $firstWeekDay 0 through 6
* @property-read int $lastWeekDay 0 through 6
* @property-read int $quarter the quarter of this instance, 1 - 4
* @property-read int $decade the decade of this instance
* @property-read int $century the century of this instance
* @property-read int $millennium the millennium of this instance
* @property-read bool $dst daylight savings time indicator, true if DST, false otherwise
* @property-read bool $local checks if the timezone is local, true if local, false otherwise
* @property-read bool $utc checks if the timezone is UTC, true if UTC, false otherwise
* @property-read string $timezoneName the current timezone name
* @property-read string $tzName alias of $timezoneName
* @property-read string $locale locale of the current instance
* @property-read int $centuriesInMillennium The number of centuries contained in the current millennium
* @property-read int $daysInCentury The number of days contained in the current century
* @property-read int $daysInDecade The number of days contained in the current decade
* @property-read int $daysInMillennium The number of days contained in the current millennium
* @property-read int $daysInMonth number of days in the given month
* @property-read int $daysInQuarter The number of days contained in the current quarter
* @property-read int $daysInWeek The number of days contained in the current week
* @property-read int $daysInYear 365 or 366
* @property-read int $decadesInCentury The number of decades contained in the current century
* @property-read int $decadesInMillennium The number of decades contained in the current millennium
* @property-read int $hoursInCentury The number of hours contained in the current century
* @property-read int $hoursInDay The number of hours contained in the current day
* @property-read int $hoursInDecade The number of hours contained in the current decade
* @property-read int $hoursInMillennium The number of hours contained in the current millennium
* @property-read int $hoursInMonth The number of hours contained in the current month
* @property-read int $hoursInQuarter The number of hours contained in the current quarter
* @property-read int $hoursInWeek The number of hours contained in the current week
* @property-read int $hoursInYear The number of hours contained in the current year
* @property-read int $microsecondsInCentury The number of microseconds contained in the current century
* @property-read int $microsecondsInDay The number of microseconds contained in the current day
* @property-read int $microsecondsInDecade The number of microseconds contained in the current decade
* @property-read int $microsecondsInHour The number of microseconds contained in the current hour
* @property-read int $microsecondsInMillennium The number of microseconds contained in the current millennium
* @property-read int $microsecondsInMillisecond The number of microseconds contained in the current millisecond
* @property-read int $microsecondsInMinute The number of microseconds contained in the current minute
* @property-read int $microsecondsInMonth The number of microseconds contained in the current month
* @property-read int $microsecondsInQuarter The number of microseconds contained in the current quarter
* @property-read int $microsecondsInSecond The number of microseconds contained in the current second
* @property-read int $microsecondsInWeek The number of microseconds contained in the current week
* @property-read int $microsecondsInYear The number of microseconds contained in the current year
* @property-read int $millisecondsInCentury The number of milliseconds contained in the current century
* @property-read int $millisecondsInDay The number of milliseconds contained in the current day
* @property-read int $millisecondsInDecade The number of milliseconds contained in the current decade
* @property-read int $millisecondsInHour The number of milliseconds contained in the current hour
* @property-read int $millisecondsInMillennium The number of milliseconds contained in the current millennium
* @property-read int $millisecondsInMinute The number of milliseconds contained in the current minute
* @property-read int $millisecondsInMonth The number of milliseconds contained in the current month
* @property-read int $millisecondsInQuarter The number of milliseconds contained in the current quarter
* @property-read int $millisecondsInSecond The number of milliseconds contained in the current second
* @property-read int $millisecondsInWeek The number of milliseconds contained in the current week
* @property-read int $millisecondsInYear The number of milliseconds contained in the current year
* @property-read int $minutesInCentury The number of minutes contained in the current century
* @property-read int $minutesInDay The number of minutes contained in the current day
* @property-read int $minutesInDecade The number of minutes contained in the current decade
* @property-read int $minutesInHour The number of minutes contained in the current hour
* @property-read int $minutesInMillennium The number of minutes contained in the current millennium
* @property-read int $minutesInMonth The number of minutes contained in the current month
* @property-read int $minutesInQuarter The number of minutes contained in the current quarter
* @property-read int $minutesInWeek The number of minutes contained in the current week
* @property-read int $minutesInYear The number of minutes contained in the current year
* @property-read int $monthsInCentury The number of months contained in the current century
* @property-read int $monthsInDecade The number of months contained in the current decade
* @property-read int $monthsInMillennium The number of months contained in the current millennium
* @property-read int $monthsInQuarter The number of months contained in the current quarter
* @property-read int $monthsInYear The number of months contained in the current year
* @property-read int $quartersInCentury The number of quarters contained in the current century
* @property-read int $quartersInDecade The number of quarters contained in the current decade
* @property-read int $quartersInMillennium The number of quarters contained in the current millennium
* @property-read int $quartersInYear The number of quarters contained in the current year
* @property-read int $secondsInCentury The number of seconds contained in the current century
* @property-read int $secondsInDay The number of seconds contained in the current day
* @property-read int $secondsInDecade The number of seconds contained in the current decade
* @property-read int $secondsInHour The number of seconds contained in the current hour
* @property-read int $secondsInMillennium The number of seconds contained in the current millennium
* @property-read int $secondsInMinute The number of seconds contained in the current minute
* @property-read int $secondsInMonth The number of seconds contained in the current month
* @property-read int $secondsInQuarter The number of seconds contained in the current quarter
* @property-read int $secondsInWeek The number of seconds contained in the current week
* @property-read int $secondsInYear The number of seconds contained in the current year
* @property-read int $weeksInCentury The number of weeks contained in the current century
* @property-read int $weeksInDecade The number of weeks contained in the current decade
* @property-read int $weeksInMillennium The number of weeks contained in the current millennium
* @property-read int $weeksInMonth The number of weeks contained in the current month
* @property-read int $weeksInQuarter The number of weeks contained in the current quarter
* @property-read int $weeksInYear 51 through 53
* @property-read int $yearsInCentury The number of years contained in the current century
* @property-read int $yearsInDecade The number of years contained in the current decade
* @property-read int $yearsInMillennium The number of years contained in the current millennium
*
* @method bool isUtc() Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
* @method bool isLocal() Check if the current instance has non-UTC timezone.
* @method bool isValid() Check if the current instance is a valid date.
* @method bool isDST() Check if the current instance is in a daylight saving time.
* @method bool isSunday() Checks if the instance day is sunday.
* @method bool isMonday() Checks if the instance day is monday.
* @method bool isTuesday() Checks if the instance day is tuesday.
* @method bool isWednesday() Checks if the instance day is wednesday.
* @method bool isThursday() Checks if the instance day is thursday.
* @method bool isFriday() Checks if the instance day is friday.
* @method bool isSaturday() Checks if the instance day is saturday.
* @method bool isSameYear(DateTimeInterface|string $date) Checks if the given date is in the same year as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentYear() Checks if the instance is in the same year as the current moment.
* @method bool isNextYear() Checks if the instance is in the same year as the current moment next year.
* @method bool isLastYear() Checks if the instance is in the same year as the current moment last year.
* @method bool isCurrentMonth() Checks if the instance is in the same month as the current moment.
* @method bool isNextMonth() Checks if the instance is in the same month as the current moment next month.
* @method bool isLastMonth() Checks if the instance is in the same month as the current moment last month.
* @method bool isSameWeek(DateTimeInterface|string $date) Checks if the given date is in the same week as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentWeek() Checks if the instance is in the same week as the current moment.
* @method bool isNextWeek() Checks if the instance is in the same week as the current moment next week.
* @method bool isLastWeek() Checks if the instance is in the same week as the current moment last week.
* @method bool isSameDay(DateTimeInterface|string $date) Checks if the given date is in the same day as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDay() Checks if the instance is in the same day as the current moment.
* @method bool isNextDay() Checks if the instance is in the same day as the current moment next day.
* @method bool isLastDay() Checks if the instance is in the same day as the current moment last day.
* @method bool isSameHour(DateTimeInterface|string $date) Checks if the given date is in the same hour as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentHour() Checks if the instance is in the same hour as the current moment.
* @method bool isNextHour() Checks if the instance is in the same hour as the current moment next hour.
* @method bool isLastHour() Checks if the instance is in the same hour as the current moment last hour.
* @method bool isSameMinute(DateTimeInterface|string $date) Checks if the given date is in the same minute as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMinute() Checks if the instance is in the same minute as the current moment.
* @method bool isNextMinute() Checks if the instance is in the same minute as the current moment next minute.
* @method bool isLastMinute() Checks if the instance is in the same minute as the current moment last minute.
* @method bool isSameSecond(DateTimeInterface|string $date) Checks if the given date is in the same second as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentSecond() Checks if the instance is in the same second as the current moment.
* @method bool isNextSecond() Checks if the instance is in the same second as the current moment next second.
* @method bool isLastSecond() Checks if the instance is in the same second as the current moment last second.
* @method bool isSameMilli(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMilli() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMilli() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMilli() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMillisecond(DateTimeInterface|string $date) Checks if the given date is in the same millisecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillisecond() Checks if the instance is in the same millisecond as the current moment.
* @method bool isNextMillisecond() Checks if the instance is in the same millisecond as the current moment next millisecond.
* @method bool isLastMillisecond() Checks if the instance is in the same millisecond as the current moment last millisecond.
* @method bool isSameMicro(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicro() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicro() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicro() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameMicrosecond(DateTimeInterface|string $date) Checks if the given date is in the same microsecond as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMicrosecond() Checks if the instance is in the same microsecond as the current moment.
* @method bool isNextMicrosecond() Checks if the instance is in the same microsecond as the current moment next microsecond.
* @method bool isLastMicrosecond() Checks if the instance is in the same microsecond as the current moment last microsecond.
* @method bool isSameDecade(DateTimeInterface|string $date) Checks if the given date is in the same decade as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentDecade() Checks if the instance is in the same decade as the current moment.
* @method bool isNextDecade() Checks if the instance is in the same decade as the current moment next decade.
* @method bool isLastDecade() Checks if the instance is in the same decade as the current moment last decade.
* @method bool isSameCentury(DateTimeInterface|string $date) Checks if the given date is in the same century as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentCentury() Checks if the instance is in the same century as the current moment.
* @method bool isNextCentury() Checks if the instance is in the same century as the current moment next century.
* @method bool isLastCentury() Checks if the instance is in the same century as the current moment last century.
* @method bool isSameMillennium(DateTimeInterface|string $date) Checks if the given date is in the same millennium as the instance. If null passed, compare to now (with the same timezone).
* @method bool isCurrentMillennium() Checks if the instance is in the same millennium as the current moment.
* @method bool isNextMillennium() Checks if the instance is in the same millennium as the current moment next millennium.
* @method bool isLastMillennium() Checks if the instance is in the same millennium as the current moment last millennium.
* @method bool isCurrentQuarter() Checks if the instance is in the same quarter as the current moment.
* @method bool isNextQuarter() Checks if the instance is in the same quarter as the current moment next quarter.
* @method bool isLastQuarter() Checks if the instance is in the same quarter as the current moment last quarter.
* @method CarbonInterface years(int $value) Set current instance year to the given value.
* @method CarbonInterface year(int $value) Set current instance year to the given value.
* @method CarbonInterface setYears(int $value) Set current instance year to the given value.
* @method CarbonInterface setYear(int $value) Set current instance year to the given value.
* @method CarbonInterface months(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface month(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface setMonths(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface setMonth(Month|int $value) Set current instance month to the given value.
* @method CarbonInterface days(int $value) Set current instance day to the given value.
* @method CarbonInterface day(int $value) Set current instance day to the given value.
* @method CarbonInterface setDays(int $value) Set current instance day to the given value.
* @method CarbonInterface setDay(int $value) Set current instance day to the given value.
* @method CarbonInterface hours(int $value) Set current instance hour to the given value.
* @method CarbonInterface hour(int $value) Set current instance hour to the given value.
* @method CarbonInterface setHours(int $value) Set current instance hour to the given value.
* @method CarbonInterface setHour(int $value) Set current instance hour to the given value.
* @method CarbonInterface minutes(int $value) Set current instance minute to the given value.
* @method CarbonInterface minute(int $value) Set current instance minute to the given value.
* @method CarbonInterface setMinutes(int $value) Set current instance minute to the given value.
* @method CarbonInterface setMinute(int $value) Set current instance minute to the given value.
* @method CarbonInterface seconds(int $value) Set current instance second to the given value.
* @method CarbonInterface second(int $value) Set current instance second to the given value.
* @method CarbonInterface setSeconds(int $value) Set current instance second to the given value.
* @method CarbonInterface setSecond(int $value) Set current instance second to the given value.
* @method CarbonInterface millis(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface milli(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMillis(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMilli(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface milliseconds(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface millisecond(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMilliseconds(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface setMillisecond(int $value) Set current instance millisecond to the given value.
* @method CarbonInterface micros(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface micro(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicros(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicro(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface microseconds(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface microsecond(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicroseconds(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface setMicrosecond(int $value) Set current instance microsecond to the given value.
* @method CarbonInterface addYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addYear() Add one year to the instance (using date interval).
* @method CarbonInterface subYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subYear() Sub one year to the instance (using date interval).
* @method CarbonInterface addYearsWithOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addYearWithOverflow() Add one year to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subYearsWithOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subYearWithOverflow() Sub one year to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addYearsWithoutOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearWithoutOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearsWithoutOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearWithoutOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearsWithNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearWithNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearsWithNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearWithNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearsNoOverflow(int|float $value = 1) Add years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addYearNoOverflow() Add one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearsNoOverflow(int|float $value = 1) Sub years (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subYearNoOverflow() Sub one year to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMonth() Add one month to the instance (using date interval).
* @method CarbonInterface subMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMonth() Sub one month to the instance (using date interval).
* @method CarbonInterface addMonthsWithOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMonthWithOverflow() Add one month to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMonthsWithOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMonthWithOverflow() Sub one month to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMonthsWithoutOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthWithoutOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthsWithoutOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthWithoutOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthsWithNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthWithNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthsWithNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthWithNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthsNoOverflow(int|float $value = 1) Add months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMonthNoOverflow() Add one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthsNoOverflow(int|float $value = 1) Sub months (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMonthNoOverflow() Sub one month to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addDay() Add one day to the instance (using date interval).
* @method CarbonInterface subDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subDay() Sub one day to the instance (using date interval).
* @method CarbonInterface addHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addHour() Add one hour to the instance (using date interval).
* @method CarbonInterface subHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subHour() Sub one hour to the instance (using date interval).
* @method CarbonInterface addMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMinute() Add one minute to the instance (using date interval).
* @method CarbonInterface subMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMinute() Sub one minute to the instance (using date interval).
* @method CarbonInterface addSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addSecond() Add one second to the instance (using date interval).
* @method CarbonInterface subSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subSecond() Sub one second to the instance (using date interval).
* @method CarbonInterface addMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMilli() Add one millisecond to the instance (using date interval).
* @method CarbonInterface subMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMilli() Sub one millisecond to the instance (using date interval).
* @method CarbonInterface addMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMillisecond() Add one millisecond to the instance (using date interval).
* @method CarbonInterface subMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMillisecond() Sub one millisecond to the instance (using date interval).
* @method CarbonInterface addMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMicro() Add one microsecond to the instance (using date interval).
* @method CarbonInterface subMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMicro() Sub one microsecond to the instance (using date interval).
* @method CarbonInterface addMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMicrosecond() Add one microsecond to the instance (using date interval).
* @method CarbonInterface subMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMicrosecond() Sub one microsecond to the instance (using date interval).
* @method CarbonInterface addMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addMillennium() Add one millennium to the instance (using date interval).
* @method CarbonInterface subMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subMillennium() Sub one millennium to the instance (using date interval).
* @method CarbonInterface addMillenniaWithOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMillenniumWithOverflow() Add one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMillenniaWithOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subMillenniumWithOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addMillenniaWithoutOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniumWithoutOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniaWithoutOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniumWithoutOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniaWithNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniumWithNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniaWithNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniumWithNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniaNoOverflow(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addMillenniumNoOverflow() Add one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniaNoOverflow(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subMillenniumNoOverflow() Sub one millennium to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addCentury() Add one century to the instance (using date interval).
* @method CarbonInterface subCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subCentury() Sub one century to the instance (using date interval).
* @method CarbonInterface addCenturiesWithOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addCenturyWithOverflow() Add one century to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subCenturiesWithOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subCenturyWithOverflow() Sub one century to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addCenturiesWithoutOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturyWithoutOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturiesWithoutOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturyWithoutOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturiesWithNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturyWithNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturiesWithNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturyWithNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturiesNoOverflow(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addCenturyNoOverflow() Add one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturiesNoOverflow(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subCenturyNoOverflow() Sub one century to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addDecade() Add one decade to the instance (using date interval).
* @method CarbonInterface subDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subDecade() Sub one decade to the instance (using date interval).
* @method CarbonInterface addDecadesWithOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addDecadeWithOverflow() Add one decade to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subDecadesWithOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subDecadeWithOverflow() Sub one decade to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addDecadesWithoutOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadeWithoutOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadesWithoutOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadeWithoutOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadesWithNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadeWithNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadesWithNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadeWithNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadesNoOverflow(int|float $value = 1) Add decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addDecadeNoOverflow() Add one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadesNoOverflow(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subDecadeNoOverflow() Sub one decade to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addQuarter() Add one quarter to the instance (using date interval).
* @method CarbonInterface subQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subQuarter() Sub one quarter to the instance (using date interval).
* @method CarbonInterface addQuartersWithOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addQuarterWithOverflow() Add one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subQuartersWithOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface subQuarterWithOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly allowed.
* @method CarbonInterface addQuartersWithoutOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarterWithoutOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuartersWithoutOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuarterWithoutOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuartersWithNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarterWithNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuartersWithNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuarterWithNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuartersNoOverflow(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addQuarterNoOverflow() Add one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuartersNoOverflow(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface subQuarterNoOverflow() Sub one quarter to the instance (using date interval) with overflow explicitly forbidden.
* @method CarbonInterface addWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addWeek() Add one week to the instance (using date interval).
* @method CarbonInterface subWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subWeek() Sub one week to the instance (using date interval).
* @method CarbonInterface addWeekdays(int|float $value = 1) Add weekdays (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface addWeekday() Add one weekday to the instance (using date interval).
* @method CarbonInterface subWeekdays(int|float $value = 1) Sub weekdays (the $value count passed in) to the instance (using date interval).
* @method CarbonInterface subWeekday() Sub one weekday to the instance (using date interval).
* @method CarbonInterface addUTCMicros(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMicro() Add one microsecond to the instance (using timestamp).
* @method CarbonInterface subUTCMicros(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMicro() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicros(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method CarbonInterface addUTCMicroseconds(int|float $value = 1) Add microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMicrosecond() Add one microsecond to the instance (using timestamp).
* @method CarbonInterface subUTCMicroseconds(int|float $value = 1) Sub microseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMicrosecond() Sub one microsecond to the instance (using timestamp).
* @method CarbonPeriod microsecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each microsecond or every X microseconds if a factor is given.
* @method float diffInUTCMicroseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of microseconds.
* @method CarbonInterface addUTCMillis(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMilli() Add one millisecond to the instance (using timestamp).
* @method CarbonInterface subUTCMillis(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMilli() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMillis(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method CarbonInterface addUTCMilliseconds(int|float $value = 1) Add milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMillisecond() Add one millisecond to the instance (using timestamp).
* @method CarbonInterface subUTCMilliseconds(int|float $value = 1) Sub milliseconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMillisecond() Sub one millisecond to the instance (using timestamp).
* @method CarbonPeriod millisecondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millisecond or every X milliseconds if a factor is given.
* @method float diffInUTCMilliseconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of milliseconds.
* @method CarbonInterface addUTCSeconds(int|float $value = 1) Add seconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCSecond() Add one second to the instance (using timestamp).
* @method CarbonInterface subUTCSeconds(int|float $value = 1) Sub seconds (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCSecond() Sub one second to the instance (using timestamp).
* @method CarbonPeriod secondsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each second or every X seconds if a factor is given.
* @method float diffInUTCSeconds(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of seconds.
* @method CarbonInterface addUTCMinutes(int|float $value = 1) Add minutes (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMinute() Add one minute to the instance (using timestamp).
* @method CarbonInterface subUTCMinutes(int|float $value = 1) Sub minutes (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMinute() Sub one minute to the instance (using timestamp).
* @method CarbonPeriod minutesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each minute or every X minutes if a factor is given.
* @method float diffInUTCMinutes(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of minutes.
* @method CarbonInterface addUTCHours(int|float $value = 1) Add hours (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCHour() Add one hour to the instance (using timestamp).
* @method CarbonInterface subUTCHours(int|float $value = 1) Sub hours (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCHour() Sub one hour to the instance (using timestamp).
* @method CarbonPeriod hoursUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each hour or every X hours if a factor is given.
* @method float diffInUTCHours(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of hours.
* @method CarbonInterface addUTCDays(int|float $value = 1) Add days (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCDay() Add one day to the instance (using timestamp).
* @method CarbonInterface subUTCDays(int|float $value = 1) Sub days (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCDay() Sub one day to the instance (using timestamp).
* @method CarbonPeriod daysUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each day or every X days if a factor is given.
* @method float diffInUTCDays(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of days.
* @method CarbonInterface addUTCWeeks(int|float $value = 1) Add weeks (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCWeek() Add one week to the instance (using timestamp).
* @method CarbonInterface subUTCWeeks(int|float $value = 1) Sub weeks (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCWeek() Sub one week to the instance (using timestamp).
* @method CarbonPeriod weeksUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each week or every X weeks if a factor is given.
* @method float diffInUTCWeeks(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of weeks.
* @method CarbonInterface addUTCMonths(int|float $value = 1) Add months (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMonth() Add one month to the instance (using timestamp).
* @method CarbonInterface subUTCMonths(int|float $value = 1) Sub months (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMonth() Sub one month to the instance (using timestamp).
* @method CarbonPeriod monthsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each month or every X months if a factor is given.
* @method float diffInUTCMonths(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of months.
* @method CarbonInterface addUTCQuarters(int|float $value = 1) Add quarters (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCQuarter() Add one quarter to the instance (using timestamp).
* @method CarbonInterface subUTCQuarters(int|float $value = 1) Sub quarters (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCQuarter() Sub one quarter to the instance (using timestamp).
* @method CarbonPeriod quartersUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each quarter or every X quarters if a factor is given.
* @method float diffInUTCQuarters(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of quarters.
* @method CarbonInterface addUTCYears(int|float $value = 1) Add years (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCYear() Add one year to the instance (using timestamp).
* @method CarbonInterface subUTCYears(int|float $value = 1) Sub years (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCYear() Sub one year to the instance (using timestamp).
* @method CarbonPeriod yearsUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each year or every X years if a factor is given.
* @method float diffInUTCYears(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of years.
* @method CarbonInterface addUTCDecades(int|float $value = 1) Add decades (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCDecade() Add one decade to the instance (using timestamp).
* @method CarbonInterface subUTCDecades(int|float $value = 1) Sub decades (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCDecade() Sub one decade to the instance (using timestamp).
* @method CarbonPeriod decadesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each decade or every X decades if a factor is given.
* @method float diffInUTCDecades(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of decades.
* @method CarbonInterface addUTCCenturies(int|float $value = 1) Add centuries (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCCentury() Add one century to the instance (using timestamp).
* @method CarbonInterface subUTCCenturies(int|float $value = 1) Sub centuries (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCCentury() Sub one century to the instance (using timestamp).
* @method CarbonPeriod centuriesUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each century or every X centuries if a factor is given.
* @method float diffInUTCCenturies(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of centuries.
* @method CarbonInterface addUTCMillennia(int|float $value = 1) Add millennia (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface addUTCMillennium() Add one millennium to the instance (using timestamp).
* @method CarbonInterface subUTCMillennia(int|float $value = 1) Sub millennia (the $value count passed in) to the instance (using timestamp).
* @method CarbonInterface subUTCMillennium() Sub one millennium to the instance (using timestamp).
* @method CarbonPeriod millenniaUntil($endDate = null, int|float $factor = 1) Return an iterable period from current date to given end (string, DateTime or Carbon instance) for each millennium or every X millennia if a factor is given.
* @method float diffInUTCMillennia(DateTimeInterface|string|null $date, bool $absolute = false) Convert current and given date in UTC timezone and return a floating number of millennia.
* @method CarbonInterface roundYear(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method CarbonInterface roundYears(float $precision = 1, string $function = "round") Round the current instance year with given precision using the given function.
* @method CarbonInterface floorYear(float $precision = 1) Truncate the current instance year with given precision.
* @method CarbonInterface floorYears(float $precision = 1) Truncate the current instance year with given precision.
* @method CarbonInterface ceilYear(float $precision = 1) Ceil the current instance year with given precision.
* @method CarbonInterface ceilYears(float $precision = 1) Ceil the current instance year with given precision.
* @method CarbonInterface roundMonth(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method CarbonInterface roundMonths(float $precision = 1, string $function = "round") Round the current instance month with given precision using the given function.
* @method CarbonInterface floorMonth(float $precision = 1) Truncate the current instance month with given precision.
* @method CarbonInterface floorMonths(float $precision = 1) Truncate the current instance month with given precision.
* @method CarbonInterface ceilMonth(float $precision = 1) Ceil the current instance month with given precision.
* @method CarbonInterface ceilMonths(float $precision = 1) Ceil the current instance month with given precision.
* @method CarbonInterface roundDay(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method CarbonInterface roundDays(float $precision = 1, string $function = "round") Round the current instance day with given precision using the given function.
* @method CarbonInterface floorDay(float $precision = 1) Truncate the current instance day with given precision.
* @method CarbonInterface floorDays(float $precision = 1) Truncate the current instance day with given precision.
* @method CarbonInterface ceilDay(float $precision = 1) Ceil the current instance day with given precision.
* @method CarbonInterface ceilDays(float $precision = 1) Ceil the current instance day with given precision.
* @method CarbonInterface roundHour(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method CarbonInterface roundHours(float $precision = 1, string $function = "round") Round the current instance hour with given precision using the given function.
* @method CarbonInterface floorHour(float $precision = 1) Truncate the current instance hour with given precision.
* @method CarbonInterface floorHours(float $precision = 1) Truncate the current instance hour with given precision.
* @method CarbonInterface ceilHour(float $precision = 1) Ceil the current instance hour with given precision.
* @method CarbonInterface ceilHours(float $precision = 1) Ceil the current instance hour with given precision.
* @method CarbonInterface roundMinute(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method CarbonInterface roundMinutes(float $precision = 1, string $function = "round") Round the current instance minute with given precision using the given function.
* @method CarbonInterface floorMinute(float $precision = 1) Truncate the current instance minute with given precision.
* @method CarbonInterface floorMinutes(float $precision = 1) Truncate the current instance minute with given precision.
* @method CarbonInterface ceilMinute(float $precision = 1) Ceil the current instance minute with given precision.
* @method CarbonInterface ceilMinutes(float $precision = 1) Ceil the current instance minute with given precision.
* @method CarbonInterface roundSecond(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method CarbonInterface roundSeconds(float $precision = 1, string $function = "round") Round the current instance second with given precision using the given function.
* @method CarbonInterface floorSecond(float $precision = 1) Truncate the current instance second with given precision.
* @method CarbonInterface floorSeconds(float $precision = 1) Truncate the current instance second with given precision.
* @method CarbonInterface ceilSecond(float $precision = 1) Ceil the current instance second with given precision.
* @method CarbonInterface ceilSeconds(float $precision = 1) Ceil the current instance second with given precision.
* @method CarbonInterface roundMillennium(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method CarbonInterface roundMillennia(float $precision = 1, string $function = "round") Round the current instance millennium with given precision using the given function.
* @method CarbonInterface floorMillennium(float $precision = 1) Truncate the current instance millennium with given precision.
* @method CarbonInterface floorMillennia(float $precision = 1) Truncate the current instance millennium with given precision.
* @method CarbonInterface ceilMillennium(float $precision = 1) Ceil the current instance millennium with given precision.
* @method CarbonInterface ceilMillennia(float $precision = 1) Ceil the current instance millennium with given precision.
* @method CarbonInterface roundCentury(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method CarbonInterface roundCenturies(float $precision = 1, string $function = "round") Round the current instance century with given precision using the given function.
* @method CarbonInterface floorCentury(float $precision = 1) Truncate the current instance century with given precision.
* @method CarbonInterface floorCenturies(float $precision = 1) Truncate the current instance century with given precision.
* @method CarbonInterface ceilCentury(float $precision = 1) Ceil the current instance century with given precision.
* @method CarbonInterface ceilCenturies(float $precision = 1) Ceil the current instance century with given precision.
* @method CarbonInterface roundDecade(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method CarbonInterface roundDecades(float $precision = 1, string $function = "round") Round the current instance decade with given precision using the given function.
* @method CarbonInterface floorDecade(float $precision = 1) Truncate the current instance decade with given precision.
* @method CarbonInterface floorDecades(float $precision = 1) Truncate the current instance decade with given precision.
* @method CarbonInterface ceilDecade(float $precision = 1) Ceil the current instance decade with given precision.
* @method CarbonInterface ceilDecades(float $precision = 1) Ceil the current instance decade with given precision.
* @method CarbonInterface roundQuarter(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method CarbonInterface roundQuarters(float $precision = 1, string $function = "round") Round the current instance quarter with given precision using the given function.
* @method CarbonInterface floorQuarter(float $precision = 1) Truncate the current instance quarter with given precision.
* @method CarbonInterface floorQuarters(float $precision = 1) Truncate the current instance quarter with given precision.
* @method CarbonInterface ceilQuarter(float $precision = 1) Ceil the current instance quarter with given precision.
* @method CarbonInterface ceilQuarters(float $precision = 1) Ceil the current instance quarter with given precision.
* @method CarbonInterface roundMillisecond(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method CarbonInterface roundMilliseconds(float $precision = 1, string $function = "round") Round the current instance millisecond with given precision using the given function.
* @method CarbonInterface floorMillisecond(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method CarbonInterface floorMilliseconds(float $precision = 1) Truncate the current instance millisecond with given precision.
* @method CarbonInterface ceilMillisecond(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method CarbonInterface ceilMilliseconds(float $precision = 1) Ceil the current instance millisecond with given precision.
* @method CarbonInterface roundMicrosecond(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method CarbonInterface roundMicroseconds(float $precision = 1, string $function = "round") Round the current instance microsecond with given precision using the given function.
* @method CarbonInterface floorMicrosecond(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method CarbonInterface floorMicroseconds(float $precision = 1) Truncate the current instance microsecond with given precision.
* @method CarbonInterface ceilMicrosecond(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method CarbonInterface ceilMicroseconds(float $precision = 1) Ceil the current instance microsecond with given precision.
* @method string shortAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longAbsoluteDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Absolute' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'Relative' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToNowDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToNow' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string shortRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (short format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method string longRelativeToOtherDiffForHumans(DateTimeInterface $other = null, int $parts = 1) Get the difference (long format, 'RelativeToOther' mode) in a human readable format in the current locale. ($other and $parts parameters can be swapped.)
* @method int centuriesInMillennium() Return the number of centuries contained in the current millennium
* @method int|static centuryOfMillennium(?int $century = null) Return the value of the century starting from the beginning of the current millennium when called with no parameters, change the current century when called with an integer value
* @method int|static dayOfCentury(?int $day = null) Return the value of the day starting from the beginning of the current century when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfDecade(?int $day = null) Return the value of the day starting from the beginning of the current decade when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMillennium(?int $day = null) Return the value of the day starting from the beginning of the current millennium when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfMonth(?int $day = null) Return the value of the day starting from the beginning of the current month when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfQuarter(?int $day = null) Return the value of the day starting from the beginning of the current quarter when called with no parameters, change the current day when called with an integer value
* @method int|static dayOfWeek(?int $day = null) Return the value of the day starting from the beginning of the current week when called with no parameters, change the current day when called with an integer value
* @method int daysInCentury() Return the number of days contained in the current century
* @method int daysInDecade() Return the number of days contained in the current decade
* @method int daysInMillennium() Return the number of days contained in the current millennium
* @method int daysInMonth() Return the number of days contained in the current month
* @method int daysInQuarter() Return the number of days contained in the current quarter
* @method int daysInWeek() Return the number of days contained in the current week
* @method int daysInYear() Return the number of days contained in the current year
* @method int|static decadeOfCentury(?int $decade = null) Return the value of the decade starting from the beginning of the current century when called with no parameters, change the current decade when called with an integer value
* @method int|static decadeOfMillennium(?int $decade = null) Return the value of the decade starting from the beginning of the current millennium when called with no parameters, change the current decade when called with an integer value
* @method int decadesInCentury() Return the number of decades contained in the current century
* @method int decadesInMillennium() Return the number of decades contained in the current millennium
* @method int|static hourOfCentury(?int $hour = null) Return the value of the hour starting from the beginning of the current century when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDay(?int $hour = null) Return the value of the hour starting from the beginning of the current day when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfDecade(?int $hour = null) Return the value of the hour starting from the beginning of the current decade when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMillennium(?int $hour = null) Return the value of the hour starting from the beginning of the current millennium when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfMonth(?int $hour = null) Return the value of the hour starting from the beginning of the current month when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfQuarter(?int $hour = null) Return the value of the hour starting from the beginning of the current quarter when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfWeek(?int $hour = null) Return the value of the hour starting from the beginning of the current week when called with no parameters, change the current hour when called with an integer value
* @method int|static hourOfYear(?int $hour = null) Return the value of the hour starting from the beginning of the current year when called with no parameters, change the current hour when called with an integer value
* @method int hoursInCentury() Return the number of hours contained in the current century
* @method int hoursInDay() Return the number of hours contained in the current day
* @method int hoursInDecade() Return the number of hours contained in the current decade
* @method int hoursInMillennium() Return the number of hours contained in the current millennium
* @method int hoursInMonth() Return the number of hours contained in the current month
* @method int hoursInQuarter() Return the number of hours contained in the current quarter
* @method int hoursInWeek() Return the number of hours contained in the current week
* @method int hoursInYear() Return the number of hours contained in the current year
* @method int|static microsecondOfCentury(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current century when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDay(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current day when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfDecade(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current decade when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfHour(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current hour when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillennium(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millennium when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMillisecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current millisecond when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMinute(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current minute when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfMonth(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current month when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfQuarter(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current quarter when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfSecond(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current second when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfWeek(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current week when called with no parameters, change the current microsecond when called with an integer value
* @method int|static microsecondOfYear(?int $microsecond = null) Return the value of the microsecond starting from the beginning of the current year when called with no parameters, change the current microsecond when called with an integer value
* @method int microsecondsInCentury() Return the number of microseconds contained in the current century
* @method int microsecondsInDay() Return the number of microseconds contained in the current day
* @method int microsecondsInDecade() Return the number of microseconds contained in the current decade
* @method int microsecondsInHour() Return the number of microseconds contained in the current hour
* @method int microsecondsInMillennium() Return the number of microseconds contained in the current millennium
* @method int microsecondsInMillisecond() Return the number of microseconds contained in the current millisecond
* @method int microsecondsInMinute() Return the number of microseconds contained in the current minute
* @method int microsecondsInMonth() Return the number of microseconds contained in the current month
* @method int microsecondsInQuarter() Return the number of microseconds contained in the current quarter
* @method int microsecondsInSecond() Return the number of microseconds contained in the current second
* @method int microsecondsInWeek() Return the number of microseconds contained in the current week
* @method int microsecondsInYear() Return the number of microseconds contained in the current year
* @method int|static millisecondOfCentury(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current century when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDay(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current day when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfDecade(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current decade when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfHour(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current hour when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMillennium(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current millennium when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMinute(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current minute when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfMonth(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current month when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfQuarter(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current quarter when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfSecond(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current second when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfWeek(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current week when called with no parameters, change the current millisecond when called with an integer value
* @method int|static millisecondOfYear(?int $millisecond = null) Return the value of the millisecond starting from the beginning of the current year when called with no parameters, change the current millisecond when called with an integer value
* @method int millisecondsInCentury() Return the number of milliseconds contained in the current century
* @method int millisecondsInDay() Return the number of milliseconds contained in the current day
* @method int millisecondsInDecade() Return the number of milliseconds contained in the current decade
* @method int millisecondsInHour() Return the number of milliseconds contained in the current hour
* @method int millisecondsInMillennium() Return the number of milliseconds contained in the current millennium
* @method int millisecondsInMinute() Return the number of milliseconds contained in the current minute
* @method int millisecondsInMonth() Return the number of milliseconds contained in the current month
* @method int millisecondsInQuarter() Return the number of milliseconds contained in the current quarter
* @method int millisecondsInSecond() Return the number of milliseconds contained in the current second
* @method int millisecondsInWeek() Return the number of milliseconds contained in the current week
* @method int millisecondsInYear() Return the number of milliseconds contained in the current year
* @method int|static minuteOfCentury(?int $minute = null) Return the value of the minute starting from the beginning of the current century when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDay(?int $minute = null) Return the value of the minute starting from the beginning of the current day when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfDecade(?int $minute = null) Return the value of the minute starting from the beginning of the current decade when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfHour(?int $minute = null) Return the value of the minute starting from the beginning of the current hour when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMillennium(?int $minute = null) Return the value of the minute starting from the beginning of the current millennium when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfMonth(?int $minute = null) Return the value of the minute starting from the beginning of the current month when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfQuarter(?int $minute = null) Return the value of the minute starting from the beginning of the current quarter when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfWeek(?int $minute = null) Return the value of the minute starting from the beginning of the current week when called with no parameters, change the current minute when called with an integer value
* @method int|static minuteOfYear(?int $minute = null) Return the value of the minute starting from the beginning of the current year when called with no parameters, change the current minute when called with an integer value
* @method int minutesInCentury() Return the number of minutes contained in the current century
* @method int minutesInDay() Return the number of minutes contained in the current day
* @method int minutesInDecade() Return the number of minutes contained in the current decade
* @method int minutesInHour() Return the number of minutes contained in the current hour
* @method int minutesInMillennium() Return the number of minutes contained in the current millennium
* @method int minutesInMonth() Return the number of minutes contained in the current month
* @method int minutesInQuarter() Return the number of minutes contained in the current quarter
* @method int minutesInWeek() Return the number of minutes contained in the current week
* @method int minutesInYear() Return the number of minutes contained in the current year
* @method int|static monthOfCentury(?int $month = null) Return the value of the month starting from the beginning of the current century when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfDecade(?int $month = null) Return the value of the month starting from the beginning of the current decade when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfMillennium(?int $month = null) Return the value of the month starting from the beginning of the current millennium when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfQuarter(?int $month = null) Return the value of the month starting from the beginning of the current quarter when called with no parameters, change the current month when called with an integer value
* @method int|static monthOfYear(?int $month = null) Return the value of the month starting from the beginning of the current year when called with no parameters, change the current month when called with an integer value
* @method int monthsInCentury() Return the number of months contained in the current century
* @method int monthsInDecade() Return the number of months contained in the current decade
* @method int monthsInMillennium() Return the number of months contained in the current millennium
* @method int monthsInQuarter() Return the number of months contained in the current quarter
* @method int monthsInYear() Return the number of months contained in the current year
* @method int|static quarterOfCentury(?int $quarter = null) Return the value of the quarter starting from the beginning of the current century when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfDecade(?int $quarter = null) Return the value of the quarter starting from the beginning of the current decade when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfMillennium(?int $quarter = null) Return the value of the quarter starting from the beginning of the current millennium when called with no parameters, change the current quarter when called with an integer value
* @method int|static quarterOfYear(?int $quarter = null) Return the value of the quarter starting from the beginning of the current year when called with no parameters, change the current quarter when called with an integer value
* @method int quartersInCentury() Return the number of quarters contained in the current century
* @method int quartersInDecade() Return the number of quarters contained in the current decade
* @method int quartersInMillennium() Return the number of quarters contained in the current millennium
* @method int quartersInYear() Return the number of quarters contained in the current year
* @method int|static secondOfCentury(?int $second = null) Return the value of the second starting from the beginning of the current century when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDay(?int $second = null) Return the value of the second starting from the beginning of the current day when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfDecade(?int $second = null) Return the value of the second starting from the beginning of the current decade when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfHour(?int $second = null) Return the value of the second starting from the beginning of the current hour when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMillennium(?int $second = null) Return the value of the second starting from the beginning of the current millennium when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMinute(?int $second = null) Return the value of the second starting from the beginning of the current minute when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfMonth(?int $second = null) Return the value of the second starting from the beginning of the current month when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfQuarter(?int $second = null) Return the value of the second starting from the beginning of the current quarter when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfWeek(?int $second = null) Return the value of the second starting from the beginning of the current week when called with no parameters, change the current second when called with an integer value
* @method int|static secondOfYear(?int $second = null) Return the value of the second starting from the beginning of the current year when called with no parameters, change the current second when called with an integer value
* @method int secondsInCentury() Return the number of seconds contained in the current century
* @method int secondsInDay() Return the number of seconds contained in the current day
* @method int secondsInDecade() Return the number of seconds contained in the current decade
* @method int secondsInHour() Return the number of seconds contained in the current hour
* @method int secondsInMillennium() Return the number of seconds contained in the current millennium
* @method int secondsInMinute() Return the number of seconds contained in the current minute
* @method int secondsInMonth() Return the number of seconds contained in the current month
* @method int secondsInQuarter() Return the number of seconds contained in the current quarter
* @method int secondsInWeek() Return the number of seconds contained in the current week
* @method int secondsInYear() Return the number of seconds contained in the current year
* @method int|static weekOfCentury(?int $week = null) Return the value of the week starting from the beginning of the current century when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfDecade(?int $week = null) Return the value of the week starting from the beginning of the current decade when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMillennium(?int $week = null) Return the value of the week starting from the beginning of the current millennium when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfMonth(?int $week = null) Return the value of the week starting from the beginning of the current month when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfQuarter(?int $week = null) Return the value of the week starting from the beginning of the current quarter when called with no parameters, change the current week when called with an integer value
* @method int|static weekOfYear(?int $week = null) Return the value of the week starting from the beginning of the current year when called with no parameters, change the current week when called with an integer value
* @method int weeksInCentury() Return the number of weeks contained in the current century
* @method int weeksInDecade() Return the number of weeks contained in the current decade
* @method int weeksInMillennium() Return the number of weeks contained in the current millennium
* @method int weeksInMonth() Return the number of weeks contained in the current month
* @method int weeksInQuarter() Return the number of weeks contained in the current quarter
* @method int|static yearOfCentury(?int $year = null) Return the value of the year starting from the beginning of the current century when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfDecade(?int $year = null) Return the value of the year starting from the beginning of the current decade when called with no parameters, change the current year when called with an integer value
* @method int|static yearOfMillennium(?int $year = null) Return the value of the year starting from the beginning of the current millennium when called with no parameters, change the current year when called with an integer value
* @method int yearsInCentury() Return the number of years contained in the current century
* @method int yearsInDecade() Return the number of years contained in the current decade
* @method int yearsInMillennium() Return the number of years contained in the current millennium
*
*
*/
trait Date
{
use Boundaries;
use Comparison;
use Converter;
use Creator;
use Difference;
use Macro;
use MagicParameter;
use Modifiers;
use Mutability;
use ObjectInitialisation;
use Options;
use Rounding;
use Serialization;
use Test;
use Timestamp;
use Units;
use Week;
/**
* Names of days of the week.
*
* @var array
*/
protected static $days = [
// @call isDayOfWeek
CarbonInterface::SUNDAY => 'Sunday',
// @call isDayOfWeek
CarbonInterface::MONDAY => 'Monday',
// @call isDayOfWeek
CarbonInterface::TUESDAY => 'Tuesday',
// @call isDayOfWeek
CarbonInterface::WEDNESDAY => 'Wednesday',
// @call isDayOfWeek
CarbonInterface::THURSDAY => 'Thursday',
// @call isDayOfWeek
CarbonInterface::FRIDAY => 'Friday',
// @call isDayOfWeek
CarbonInterface::SATURDAY => 'Saturday',
];
/**
* List of unit and magic methods associated as doc-comments.
*
* @var array
*/
protected static $units = [
// @call setUnit
// @call addUnit
'year',
// @call setUnit
// @call addUnit
'month',
// @call setUnit
// @call addUnit
'day',
// @call setUnit
// @call addUnit
'hour',
// @call setUnit
// @call addUnit
'minute',
// @call setUnit
// @call addUnit
'second',
// @call setUnit
// @call addUnit
'milli',
// @call setUnit
// @call addUnit
'millisecond',
// @call setUnit
// @call addUnit
'micro',
// @call setUnit
// @call addUnit
'microsecond',
];
/**
* Creates a DateTimeZone from a string, DateTimeZone or integer offset.
*
* @param DateTimeZone|string|int|false|null $object original value to get CarbonTimeZone from it.
* @param DateTimeZone|string|int|false|null $objectDump dump of the object for error messages.
*
* @throws InvalidTimeZoneException
*
* @return CarbonTimeZone|null
*/
protected static function safeCreateDateTimeZone(
DateTimeZone|string|int|false|null $object,
DateTimeZone|string|int|false|null $objectDump = null,
): ?CarbonTimeZone {
return CarbonTimeZone::instance($object, $objectDump);
}
/**
* Get the TimeZone associated with the Carbon instance (as CarbonTimeZone).
*
* @link https://php.net/manual/en/datetime.gettimezone.php
*/
public function getTimezone(): CarbonTimeZone
{
return $this->transmitFactory(fn () => CarbonTimeZone::instance(parent::getTimezone()));
}
/**
* List of minimum and maximums for each unit.
*/
protected static function getRangesByUnit(int $daysInMonth = 31): array
{
return [
// @call roundUnit
'year' => [1, 9999],
// @call roundUnit
'month' => [1, static::MONTHS_PER_YEAR],
// @call roundUnit
'day' => [1, $daysInMonth],
// @call roundUnit
'hour' => [0, static::HOURS_PER_DAY - 1],
// @call roundUnit
'minute' => [0, static::MINUTES_PER_HOUR - 1],
// @call roundUnit
'second' => [0, static::SECONDS_PER_MINUTE - 1],
];
}
/**
* Get a copy of the instance.
*
* @return static
*/
public function copy()
{
return clone $this;
}
/**
* @alias copy
*
* Get a copy of the instance.
*
* @return static
*/
public function clone()
{
return clone $this;
}
/**
* Clone the current instance if it's mutable.
*
* This method is convenient to ensure you don't mutate the initial object
* but avoid to make a useless copy of it if it's already immutable.
*
* @return static
*/
public function avoidMutation(): static
{
if ($this instanceof DateTimeImmutable) {
return $this;
}
return clone $this;
}
/**
* Returns a present instance in the same timezone.
*
* @return static
*/
public function nowWithSameTz(): static
{
$timezone = $this->getTimezone();
return $this->getClock()?->nowAs(static::class, $timezone) ?? static::now($timezone);
}
/**
* Return the Carbon instance passed through, a now instance in the same timezone
* if null given or parse the input if string given.
*
* @param Carbon|\Carbon\CarbonPeriod|\Carbon\CarbonInterval|\DateInterval|\DatePeriod|DateTimeInterface|string|null $date
*
* @return static
*/
public function carbonize($date = null)
{
if ($date instanceof DateInterval) {
return $this->avoidMutation()->add($date);
}
if ($date instanceof DatePeriod || $date instanceof CarbonPeriod) {
$date = $date->getStartDate();
}
return $this->resolveCarbon($date);
}
///////////////////////////////////////////////////////////////////
///////////////////////// GETTERS AND SETTERS /////////////////////
///////////////////////////////////////////////////////////////////
/**
* Get a part of the Carbon object.
*
* @throws UnknownGetterException
*
* @return string|int|bool|DateTimeZone|null
*/
public function __get(string $name): mixed
{
return $this->get($name);
}
/**
* Get a part of the Carbon object.
*
* @throws UnknownGetterException
*
* @return string|int|bool|DateTimeZone
*/
public function get(Unit|string $name): mixed
{
static $localizedFormats = [
// @property string the day of week in current locale
'localeDayOfWeek' => 'dddd',
// @property string the abbreviated day of week in current locale
'shortLocaleDayOfWeek' => 'ddd',
// @property string the month in current locale
'localeMonth' => 'MMMM',
// @property string the abbreviated month in current locale
'shortLocaleMonth' => 'MMM',
];
$name = Unit::toName($name);
if (isset($localizedFormats[$name])) {
return $this->isoFormat($localizedFormats[$name]);
}
static $formats = [
// @property int
'year' => 'Y',
// @property int
'yearIso' => 'o',
// @--property-read int
// @--property-write Month|int
// @property int
'month' => 'n',
// @property int
'day' => 'j',
// @property int
'hour' => 'G',
// @property int
'minute' => 'i',
// @property int
'second' => 's',
// @property int
'micro' => 'u',
// @property int
'microsecond' => 'u',
// @property int 0 (for Sunday) through 6 (for Saturday)
'dayOfWeek' => 'w',
// @property int 1 (for Monday) through 7 (for Sunday)
'dayOfWeekIso' => 'N',
// @property int ISO-8601 week number of year, weeks starting on Monday
'weekOfYear' => 'W',
// @property-read int number of days in the given month
'daysInMonth' => 't',
// @property int|float|string seconds since the Unix Epoch
'timestamp' => 'U',
// @property-read string "am"/"pm" (Ante meridiem or Post meridiem latin lowercase mark)
'latinMeridiem' => 'a',
// @property-read string "AM"/"PM" (Ante meridiem or Post meridiem latin uppercase mark)
'latinUpperMeridiem' => 'A',
// @property string the day of week in English
'englishDayOfWeek' => 'l',
// @property string the abbreviated day of week in English
'shortEnglishDayOfWeek' => 'D',
// @property string the month in English
'englishMonth' => 'F',
// @property string the abbreviated month in English
'shortEnglishMonth' => 'M',
// @property-read string $timezoneAbbreviatedName the current timezone abbreviated name
'timezoneAbbreviatedName' => 'T',
// @property-read string $tzAbbrName alias of $timezoneAbbreviatedName
'tzAbbrName' => 'T',
];
switch (true) {
case isset($formats[$name]):
$value = $this->rawFormat($formats[$name]);
return is_numeric($value) ? (int) $value : $value;
// @property-read string long name of weekday translated according to Carbon locale, in english if no translation available for current language
case $name === 'dayName':
return $this->getTranslatedDayName();
// @property-read string short name of weekday translated according to Carbon locale, in english if no translation available for current language
case $name === 'shortDayName':
return $this->getTranslatedShortDayName();
// @property-read string very short name of weekday translated according to Carbon locale, in english if no translation available for current language
case $name === 'minDayName':
return $this->getTranslatedMinDayName();
// @property-read string long name of month translated according to Carbon locale, in english if no translation available for current language
case $name === 'monthName':
return $this->getTranslatedMonthName();
// @property-read string short name of month translated according to Carbon locale, in english if no translation available for current language
case $name === 'shortMonthName':
return $this->getTranslatedShortMonthName();
// @property-read string lowercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
case $name === 'meridiem':
return $this->meridiem(true);
// @property-read string uppercase meridiem mark translated according to Carbon locale, in latin if no translation available for current language
case $name === 'upperMeridiem':
return $this->meridiem();
// @property-read int current hour from 1 to 24
case $name === 'noZeroHour':
return $this->hour ?: 24;
// @property int
case $name === 'milliseconds':
// @property int
case $name === 'millisecond':
// @property int
case $name === 'milli':
return (int) floor(((int) $this->rawFormat('u')) / 1000);
// @property int 1 through 53
case $name === 'week':
return (int) $this->week();
// @property int 1 through 53
case $name === 'isoWeek':
return (int) $this->isoWeek();
// @property int year according to week format
case $name === 'weekYear':
return (int) $this->weekYear();
// @property int year according to ISO week format
case $name === 'isoWeekYear':
return (int) $this->isoWeekYear();
// @property-read int 51 through 53
case $name === 'weeksInYear':
return $this->weeksInYear();
// @property-read int 51 through 53
case $name === 'isoWeeksInYear':
return $this->isoWeeksInYear();
// @property int 1 through 5
case $name === 'weekOfMonth':
return (int) ceil($this->day / static::DAYS_PER_WEEK);
// @property-read int 1 through 5
case $name === 'weekNumberInMonth':
return (int) ceil(($this->day + $this->avoidMutation()->startOfMonth()->dayOfWeekIso - 1) / static::DAYS_PER_WEEK);
// @property-read int 0 through 6
case $name === 'firstWeekDay':
return (int) $this->getTranslationMessage('first_day_of_week');
// @property-read int 0 through 6
case $name === 'lastWeekDay':
return $this->transmitFactory(fn () => static::weekRotate((int) $this->getTranslationMessage('first_day_of_week'), -1));
// @property int 1 through 366
case $name === 'dayOfYear':
return 1 + (int) ($this->rawFormat('z'));
// @property-read int 365 or 366
case $name === 'daysInYear':
return static::DAYS_PER_YEAR + ($this->isLeapYear() ? 1 : 0);
// @property int does a diffInYears() with default parameters
case $name === 'age':
return (int) $this->diffInYears();
// @property-read int the quarter of this instance, 1 - 4
case $name === 'quarter':
return (int) ceil($this->month / static::MONTHS_PER_QUARTER);
// @property-read int the decade of this instance
// @call isSameUnit
case $name === 'decade':
return (int) ceil($this->year / static::YEARS_PER_DECADE);
// @property-read int the century of this instance
// @call isSameUnit
case $name === 'century':
$factor = 1;
$year = $this->year;
if ($year < 0) {
$year = -$year;
$factor = -1;
}
return (int) ($factor * ceil($year / static::YEARS_PER_CENTURY));
// @property-read int the millennium of this instance
// @call isSameUnit
case $name === 'millennium':
$factor = 1;
$year = $this->year;
if ($year < 0) {
$year = -$year;
$factor = -1;
}
return (int) ($factor * ceil($year / static::YEARS_PER_MILLENNIUM));
// @property int the timezone offset in seconds from UTC
case $name === 'offset':
return $this->getOffset();
// @property int the timezone offset in minutes from UTC
case $name === 'offsetMinutes':
return $this->getOffset() / static::SECONDS_PER_MINUTE;
// @property int the timezone offset in hours from UTC
case $name === 'offsetHours':
return $this->getOffset() / static::SECONDS_PER_MINUTE / static::MINUTES_PER_HOUR;
// @property-read bool daylight savings time indicator, true if DST, false otherwise
case $name === 'dst':
return $this->rawFormat('I') === '1';
// @property-read bool checks if the timezone is local, true if local, false otherwise
case $name === 'local':
return $this->getOffset() === $this->avoidMutation()->setTimezone(date_default_timezone_get())->getOffset();
// @property-read bool checks if the timezone is UTC, true if UTC, false otherwise
case $name === 'utc':
return $this->getOffset() === 0;
// @--property-write DateTimeZone|string|int $timezone the current timezone
// @--property-write DateTimeZone|string|int $tz alias of $timezone
// @--property-read CarbonTimeZone $timezone the current timezone
// @--property-read CarbonTimeZone $tz alias of $timezone
// @property CarbonTimeZone $timezone the current timezone
// @property CarbonTimeZone $tz alias of $timezone
case $name === 'timezone' || $name === 'tz':
return $this->getTimezone();
// @property-read string $timezoneName the current timezone name
// @property-read string $tzName alias of $timezoneName
case $name === 'timezoneName' || $name === 'tzName':
return $this->getTimezone()->getName();
// @property-read string locale of the current instance
case $name === 'locale':
return $this->getTranslatorLocale();
case preg_match('/^([a-z]{2,})(In|Of)([A-Z][a-z]+)$/', $name, $match):
[, $firstUnit, $operator, $secondUnit] = $match;
try {
$start = $this->avoidMutation()->startOf($secondUnit);
$value = $operator === 'Of'
? (\in_array($firstUnit, [
// Unit with indexes starting at 1 (other units start at 0)
'day',
'week',
'month',
'quarter',
], true) ? 1 : 0) + floor($start->diffInUnit($firstUnit, $this))
: round($start->diffInUnit($firstUnit, $start->avoidMutation()->add($secondUnit, 1)));
return (int) $value;
} catch (UnknownUnitException) {
// default to macro
}
default:
$macro = $this->getLocalMacro('get'.ucfirst($name));
if ($macro) {
return $this->executeCallableWithContext($macro);
}
throw new UnknownGetterException($name);
}
}
/**
* Check if an attribute exists on the object
*
* @param string $name
*
* @return bool
*/
public function __isset($name)
{
try {
$this->__get($name);
} catch (UnknownGetterException | ReflectionException) {
return false;
}
return true;
}
/**
* Set a part of the Carbon object
*
* @param string $name
* @param string|int|DateTimeZone $value
*
* @throws UnknownSetterException|ReflectionException
*
* @return void
*/
public function __set($name, $value)
{
if ($this->constructedObjectId === spl_object_hash($this)) {
$this->set($name, $value);
return;
}
$this->$name = $value;
}
/**
* Set a part of the Carbon object.
*
* @throws ImmutableException|UnknownSetterException
*
* @return $this
*/
public function set(Unit|array|string $name, DateTimeZone|Month|string|int|float|null $value = null): static
{
if ($this->isImmutable()) {
throw new ImmutableException(\sprintf('%s class', static::class));
}
if (\is_array($name)) {
foreach ($name as $key => $value) {
$this->set($key, $value);
}
return $this;
}
$name = Unit::toName($name);
switch ($name) {
case 'milliseconds':
case 'millisecond':
case 'milli':
case 'microseconds':
case 'microsecond':
case 'micro':
if (str_starts_with($name, 'milli')) {
$value *= 1000;
}
while ($value < 0) {
$this->subSecond();
$value += static::MICROSECONDS_PER_SECOND;
}
while ($value >= static::MICROSECONDS_PER_SECOND) {
$this->addSecond();
$value -= static::MICROSECONDS_PER_SECOND;
}
$this->modify($this->rawFormat('H:i:s.').str_pad((string) round($value), 6, '0', STR_PAD_LEFT));
break;
case 'year':
case 'month':
case 'day':
case 'hour':
case 'minute':
case 'second':
[$year, $month, $day, $hour, $minute, $second] = array_map('intval', explode('-', $this->rawFormat('Y-n-j-G-i-s')));
$$name = self::monthToInt($value, $name);
$this->setDateTime($year, $month, $day, $hour, $minute, $second);
break;
case 'week':
$this->week($value);
break;
case 'isoWeek':
$this->isoWeek($value);
break;
case 'weekYear':
$this->weekYear($value);
break;
case 'isoWeekYear':
$this->isoWeekYear($value);
break;
case 'dayOfYear':
$this->addDays($value - $this->dayOfYear);
break;
case 'dayOfWeek':
$this->addDays($value - $this->dayOfWeek);
break;
case 'dayOfWeekIso':
$this->addDays($value - $this->dayOfWeekIso);
break;
case 'timestamp':
$this->setTimestamp($value);
break;
case 'offset':
$this->setTimezone(static::safeCreateDateTimeZone($value / static::SECONDS_PER_MINUTE / static::MINUTES_PER_HOUR));
break;
case 'offsetMinutes':
$this->setTimezone(static::safeCreateDateTimeZone($value / static::MINUTES_PER_HOUR));
break;
case 'offsetHours':
$this->setTimezone(static::safeCreateDateTimeZone($value));
break;
case 'timezone':
case 'tz':
$this->setTimezone($value);
break;
default:
if (preg_match('/^([a-z]{2,})Of([A-Z][a-z]+)$/', $name, $match)) {
[, $firstUnit, $secondUnit] = $match;
try {
$start = $this->avoidMutation()->startOf($secondUnit);
$currentValue = (\in_array($firstUnit, [
// Unit with indexes starting at 1 (other units start at 0)
'day',
'week',
'month',
'quarter',
], true) ? 1 : 0) + (int) floor($start->diffInUnit($firstUnit, $this));
// We check $value a posteriori to give precedence to UnknownUnitException
if (!\is_int($value)) {
throw new UnitException("->$name expects integer value");
}
$this->addUnit($firstUnit, $value - $currentValue);
break;
} catch (UnknownUnitException) {
// default to macro
}
}
$macro = $this->getLocalMacro('set'.ucfirst($name));
if ($macro) {
$this->executeCallableWithContext($macro, $value);
break;
}
if ($this->isLocalStrictModeEnabled()) {
throw new UnknownSetterException($name);
}
$this->$name = $value;
}
return $this;
}
/**
* Get the translation of the current week day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
* @param string $keySuffix "", "_short" or "_min"
* @param string|null $defaultValue default value if translation missing
*/
public function getTranslatedDayName(
?string $context = null,
string $keySuffix = '',
?string $defaultValue = null,
): string {
return $this->getTranslatedFormByRegExp('weekdays', $keySuffix, $context, $this->dayOfWeek, $defaultValue ?: $this->englishDayOfWeek);
}
/**
* Get the translation of the current short week day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
*/
public function getTranslatedShortDayName(?string $context = null): string
{
return $this->getTranslatedDayName($context, '_short', $this->shortEnglishDayOfWeek);
}
/**
* Get the translation of the current abbreviated week day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
*/
public function getTranslatedMinDayName(?string $context = null): string
{
return $this->getTranslatedDayName($context, '_min', $this->shortEnglishDayOfWeek);
}
/**
* Get the translation of the current month day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
* @param string $keySuffix "" or "_short"
* @param string|null $defaultValue default value if translation missing
*/
public function getTranslatedMonthName(
?string $context = null,
string $keySuffix = '',
?string $defaultValue = null,
): string {
return $this->getTranslatedFormByRegExp('months', $keySuffix, $context, $this->month - 1, $defaultValue ?: $this->englishMonth);
}
/**
* Get the translation of the current short month day name (with context for languages with multiple forms).
*
* @param string|null $context whole format string
*/
public function getTranslatedShortMonthName(?string $context = null): string
{
return $this->getTranslatedMonthName($context, '_short', $this->shortEnglishMonth);
}
/**
* Get/set the day of year.
*
* @template T of int|null
*
* @param int|null $value new value for day of year if using as setter.
*
* @psalm-param T $value
*
* @return static|int
*
* @psalm-return (T is int ? static : int)
*/
public function dayOfYear(?int $value = null): static|int
{
$dayOfYear = $this->dayOfYear;
return $value === null ? $dayOfYear : $this->addDays($value - $dayOfYear);
}
/**
* Get/set the weekday from 0 (Sunday) to 6 (Saturday).
*
* @param WeekDay|int|null $value new value for weekday if using as setter.
*/
public function weekday(WeekDay|int|null $value = null): static|int
{
if ($value === null) {
return $this->dayOfWeek;
}
$firstDay = (int) ($this->getTranslationMessage('first_day_of_week') ?? 0);
$dayOfWeek = ($this->dayOfWeek + 7 - $firstDay) % 7;
return $this->addDays(((WeekDay::int($value) + 7 - $firstDay) % 7) - $dayOfWeek);
}
/**
* Get/set the ISO weekday from 1 (Monday) to 7 (Sunday).
*
* @param WeekDay|int|null $value new value for weekday if using as setter.
*/
public function isoWeekday(WeekDay|int|null $value = null): static|int
{
$dayOfWeekIso = $this->dayOfWeekIso;
return $value === null ? $dayOfWeekIso : $this->addDays(WeekDay::int($value) - $dayOfWeekIso);
}
/**
* Return the number of days since the start of the week (using the current locale or the first parameter
* if explicitly given).
*
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week,
* if not provided, start of week is inferred from the locale
* (Sunday for en_US, Monday for de_DE, etc.)
*/
public function getDaysFromStartOfWeek(WeekDay|int|null $weekStartsAt = null): int
{
$firstDay = (int) (WeekDay::int($weekStartsAt) ?? $this->getTranslationMessage('first_day_of_week') ?? 0);
return ($this->dayOfWeek + 7 - $firstDay) % 7;
}
/**
* Set the day (keeping the current time) to the start of the week + the number of days passed as the first
* parameter. First day of week is driven by the locale unless explicitly set with the second parameter.
*
* @param int $numberOfDays number of days to add after the start of the current week
* @param WeekDay|int|null $weekStartsAt optional start allow you to specify the day of week to use to start the week,
* if not provided, start of week is inferred from the locale
* (Sunday for en_US, Monday for de_DE, etc.)
*/
public function setDaysFromStartOfWeek(int $numberOfDays, WeekDay|int|null $weekStartsAt = null): static
{
return $this->addDays($numberOfDays - $this->getDaysFromStartOfWeek(WeekDay::int($weekStartsAt)));
}
/**
* Set any unit to a new value without overflowing current other unit given.
*
* @param string $valueUnit unit name to modify
* @param int $value new value for the input unit
* @param string $overflowUnit unit name to not overflow
*/
public function setUnitNoOverflow(string $valueUnit, int $value, string $overflowUnit): static
{
try {
$start = $this->avoidMutation()->startOf($overflowUnit);
$end = $this->avoidMutation()->endOf($overflowUnit);
/** @var static $date */
$date = $this->$valueUnit($value);
if ($date < $start) {
return $date->mutateIfMutable($start);
}
if ($date > $end) {
return $date->mutateIfMutable($end);
}
return $date;
} catch (BadMethodCallException | ReflectionException $exception) {
throw new UnknownUnitException($valueUnit, 0, $exception);
}
}
/**
* Add any unit to a new value without overflowing current other unit given.
*
* @param string $valueUnit unit name to modify
* @param int $value amount to add to the input unit
* @param string $overflowUnit unit name to not overflow
*/
public function addUnitNoOverflow(string $valueUnit, int $value, string $overflowUnit): static
{
return $this->setUnitNoOverflow($valueUnit, $this->$valueUnit + $value, $overflowUnit);
}
/**
* Subtract any unit to a new value without overflowing current other unit given.
*
* @param string $valueUnit unit name to modify
* @param int $value amount to subtract to the input unit
* @param string $overflowUnit unit name to not overflow
*/
public function subUnitNoOverflow(string $valueUnit, int $value, string $overflowUnit): static
{
return $this->setUnitNoOverflow($valueUnit, $this->$valueUnit - $value, $overflowUnit);
}
/**
* Returns the minutes offset to UTC if no arguments passed, else set the timezone with given minutes shift passed.
*/
public function utcOffset(?int $minuteOffset = null): static|int
{
if ($minuteOffset === null) {
return $this->offsetMinutes;
}
return $this->setTimezone(CarbonTimeZone::createFromMinuteOffset($minuteOffset));
}
/**
* Set the date with gregorian year, month and day numbers.
*
* @see https://php.net/manual/en/datetime.setdate.php
*/
public function setDate(int $year, int $month, int $day): static
{
return parent::setDate($year, $month, $day);
}
/**
* Set a date according to the ISO 8601 standard - using weeks and day offsets rather than specific dates.
*
* @see https://php.net/manual/en/datetime.setisodate.php
*/
public function setISODate(int $year, int $week, int $day = 1): static
{
return parent::setISODate($year, $week, $day);
}
/**
* Set the date and time all together.
*/
public function setDateTime(
int $year,
int $month,
int $day,
int $hour,
int $minute,
int $second = 0,
int $microseconds = 0,
): static {
return $this->setDate($year, $month, $day)->setTime($hour, $minute, $second, $microseconds);
}
/**
* Resets the current time of the DateTime object to a different time.
*
* @see https://php.net/manual/en/datetime.settime.php
*/
public function setTime(int $hour, int $minute, int $second = 0, int $microseconds = 0): static
{
return parent::setTime($hour, $minute, $second, $microseconds);
}
/**
* Set the instance's timestamp.
*
* Timestamp input can be given as int, float or a string containing one or more numbers.
*/
public function setTimestamp(float|int|string $timestamp): static
{
[$seconds, $microseconds] = self::getIntegerAndDecimalParts($timestamp);
return parent::setTimestamp((int) $seconds)->setMicroseconds((int) $microseconds);
}
/**
* Set the time by time string.
*/
public function setTimeFromTimeString(string $time): static
{
if (!str_contains($time, ':')) {
$time .= ':0';
}
return $this->modify($time);
}
/**
* @alias setTimezone
*/
public function timezone(DateTimeZone|string|int $value): static
{
return $this->setTimezone($value);
}
/**
* Set the timezone or returns the timezone name if no arguments passed.
*/
public function tz(DateTimeZone|string|int|null $value = null): static|string
{
if ($value === null) {
return $this->tzName;
}
return $this->setTimezone($value);
}
/**
* Set the instance's timezone from a string or object.
*/
public function setTimezone(DateTimeZone|string|int $timeZone): static
{
return parent::setTimezone(static::safeCreateDateTimeZone($timeZone));
}
/**
* Set the instance's timezone from a string or object and add/subtract the offset difference.
*/
public function shiftTimezone(DateTimeZone|string $value): static
{
$dateTimeString = $this->format('Y-m-d H:i:s.u');
return $this
->setTimezone($value)
->modify($dateTimeString);
}
/**
* Set the instance's timezone to UTC.
*/
public function utc(): static
{
return $this->setTimezone('UTC');
}
/**
* Set the year, month, and date for this instance to that of the passed instance.
*/
public function setDateFrom(DateTimeInterface|string $date): static
{
$date = $this->resolveCarbon($date);
return $this->setDate($date->year, $date->month, $date->day);
}
/**
* Set the hour, minute, second and microseconds for this instance to that of the passed instance.
*/
public function setTimeFrom(DateTimeInterface|string $date): static
{
$date = $this->resolveCarbon($date);
return $this->setTime($date->hour, $date->minute, $date->second, $date->microsecond);
}
/**
* Set the date and time for this instance to that of the passed instance.
*/
public function setDateTimeFrom(DateTimeInterface|string $date): static
{
$date = $this->resolveCarbon($date);
return $this->modify($date->rawFormat('Y-m-d H:i:s.u'));
}
/**
* Get the days of the week.
*/
public static function getDays(): array
{
return static::$days;
}
///////////////////////////////////////////////////////////////////
/////////////////////// WEEK SPECIAL DAYS /////////////////////////
///////////////////////////////////////////////////////////////////
/**
* Get the first day of week.
*
* @return int
*/
public static function getWeekStartsAt(?string $locale = null): int
{
return (int) static::getTranslationMessageWith(
$locale ? Translator::get($locale) : static::getTranslator(),
'first_day_of_week',
);
}
/**
* Get the last day of week.
*
* @param string $locale local to consider the last day of week.
*
* @return int
*/
public static function getWeekEndsAt(?string $locale = null): int
{
return static::weekRotate(static::getWeekStartsAt($locale), -1);
}
/**
* Get weekend days
*/
public static function getWeekendDays(): array
{
return FactoryImmutable::getInstance()->getWeekendDays();
}
/**
* @deprecated To avoid conflict between different third-party libraries, static setters should not be used.
* You should rather consider week-end is always saturday and sunday, and if you have some custom
* week-end days to handle, give to those days an other name and create a macro for them:
*
* ```
* Carbon::macro('isDayOff', function ($date) {
* return $date->isSunday() || $date->isMonday();
* });
* Carbon::macro('isNotDayOff', function ($date) {
* return !$date->isDayOff();
* });
* if ($someDate->isDayOff()) ...
* if ($someDate->isNotDayOff()) ...
* // Add 5 not-off days
* $count = 5;
* while ($someDate->isDayOff() || ($count-- > 0)) {
* $someDate->addDay();
* }
* ```
*
* Set weekend days
*/
public static function setWeekendDays(array $days): void
{
FactoryImmutable::getDefaultInstance()->setWeekendDays($days);
}
/**
* Determine if a time string will produce a relative date.
*
* @return bool true if time match a relative date, false if absolute or invalid time string
*/
public static function hasRelativeKeywords(?string $time): bool
{
if (!$time || strtotime($time) === false) {
return false;
}
$date1 = new DateTime('2000-01-01T00:00:00Z');
$date1->modify($time);
$date2 = new DateTime('2001-12-25T00:00:00Z');
$date2->modify($time);
return $date1 != $date2;
}
///////////////////////////////////////////////////////////////////
/////////////////////// STRING FORMATTING /////////////////////////
///////////////////////////////////////////////////////////////////
/**
* Returns list of locale formats for ISO formatting.
*
* @param string|null $locale current locale used if null
*/
public function getIsoFormats(?string $locale = null): array
{
return [
'LT' => $this->getTranslationMessage('formats.LT', $locale),
'LTS' => $this->getTranslationMessage('formats.LTS', $locale),
'L' => $this->getTranslationMessage('formats.L', $locale),
'LL' => $this->getTranslationMessage('formats.LL', $locale),
'LLL' => $this->getTranslationMessage('formats.LLL', $locale),
'LLLL' => $this->getTranslationMessage('formats.LLLL', $locale),
'l' => $this->getTranslationMessage('formats.l', $locale),
'll' => $this->getTranslationMessage('formats.ll', $locale),
'lll' => $this->getTranslationMessage('formats.lll', $locale),
'llll' => $this->getTranslationMessage('formats.llll', $locale),
];
}
/**
* Returns list of calendar formats for ISO formatting.
*
* @param string|null $locale current locale used if null
*/
public function getCalendarFormats(?string $locale = null): array
{
return [
'sameDay' => $this->getTranslationMessage('calendar.sameDay', $locale, '[Today at] LT'),
'nextDay' => $this->getTranslationMessage('calendar.nextDay', $locale, '[Tomorrow at] LT'),
'nextWeek' => $this->getTranslationMessage('calendar.nextWeek', $locale, 'dddd [at] LT'),
'lastDay' => $this->getTranslationMessage('calendar.lastDay', $locale, '[Yesterday at] LT'),
'lastWeek' => $this->getTranslationMessage('calendar.lastWeek', $locale, '[Last] dddd [at] LT'),
'sameElse' => $this->getTranslationMessage('calendar.sameElse', $locale, 'L'),
];
}
/**
* Returns list of locale units for ISO formatting.
*/
public static function getIsoUnits(): array
{
static $units = null;
$units ??= [
'OD' => ['getAltNumber', ['day']],
'OM' => ['getAltNumber', ['month']],
'OY' => ['getAltNumber', ['year']],
'OH' => ['getAltNumber', ['hour']],
'Oh' => ['getAltNumber', ['h']],
'Om' => ['getAltNumber', ['minute']],
'Os' => ['getAltNumber', ['second']],
'D' => 'day',
'DD' => ['rawFormat', ['d']],
'Do' => ['ordinal', ['day', 'D']],
'd' => 'dayOfWeek',
'dd' => static fn (CarbonInterface $date, $originalFormat = null) => $date->getTranslatedMinDayName(
$originalFormat,
),
'ddd' => static fn (CarbonInterface $date, $originalFormat = null) => $date->getTranslatedShortDayName(
$originalFormat,
),
'dddd' => static fn (CarbonInterface $date, $originalFormat = null) => $date->getTranslatedDayName(
$originalFormat,
),
'DDD' => 'dayOfYear',
'DDDD' => ['getPaddedUnit', ['dayOfYear', 3]],
'DDDo' => ['ordinal', ['dayOfYear', 'DDD']],
'e' => ['weekday', []],
'E' => 'dayOfWeekIso',
'H' => ['rawFormat', ['G']],
'HH' => ['rawFormat', ['H']],
'h' => ['rawFormat', ['g']],
'hh' => ['rawFormat', ['h']],
'k' => 'noZeroHour',
'kk' => ['getPaddedUnit', ['noZeroHour']],
'hmm' => ['rawFormat', ['gi']],
'hmmss' => ['rawFormat', ['gis']],
'Hmm' => ['rawFormat', ['Gi']],
'Hmmss' => ['rawFormat', ['Gis']],
'm' => 'minute',
'mm' => ['rawFormat', ['i']],
'a' => 'meridiem',
'A' => 'upperMeridiem',
's' => 'second',
'ss' => ['getPaddedUnit', ['second']],
'S' => static fn (CarbonInterface $date) => (string) floor($date->micro / 100000),
'SS' => static fn (CarbonInterface $date) => self::floorZeroPad($date->micro / 10000, 2),
'SSS' => static fn (CarbonInterface $date) => self::floorZeroPad($date->micro / 1000, 3),
'SSSS' => static fn (CarbonInterface $date) => self::floorZeroPad($date->micro / 100, 4),
'SSSSS' => static fn (CarbonInterface $date) => self::floorZeroPad($date->micro / 10, 5),
'SSSSSS' => ['getPaddedUnit', ['micro', 6]],
'SSSSSSS' => static fn (CarbonInterface $date) => self::floorZeroPad($date->micro * 10, 7),
'SSSSSSSS' => static fn (CarbonInterface $date) => self::floorZeroPad($date->micro * 100, 8),
'SSSSSSSSS' => static fn (CarbonInterface $date) => self::floorZeroPad($date->micro * 1000, 9),
'M' => 'month',
'MM' => ['rawFormat', ['m']],
'MMM' => static function (CarbonInterface $date, $originalFormat = null) {
$month = $date->getTranslatedShortMonthName($originalFormat);
$suffix = $date->getTranslationMessage('mmm_suffix');
if ($suffix && $month !== $date->monthName) {
$month .= $suffix;
}
return $month;
},
'MMMM' => static fn (CarbonInterface $date, $originalFormat = null) => $date->getTranslatedMonthName(
$originalFormat,
),
'Mo' => ['ordinal', ['month', 'M']],
'Q' => 'quarter',
'Qo' => ['ordinal', ['quarter', 'M']],
'G' => 'isoWeekYear',
'GG' => ['getPaddedUnit', ['isoWeekYear']],
'GGG' => ['getPaddedUnit', ['isoWeekYear', 3]],
'GGGG' => ['getPaddedUnit', ['isoWeekYear', 4]],
'GGGGG' => ['getPaddedUnit', ['isoWeekYear', 5]],
'g' => 'weekYear',
'gg' => ['getPaddedUnit', ['weekYear']],
'ggg' => ['getPaddedUnit', ['weekYear', 3]],
'gggg' => ['getPaddedUnit', ['weekYear', 4]],
'ggggg' => ['getPaddedUnit', ['weekYear', 5]],
'W' => 'isoWeek',
'WW' => ['getPaddedUnit', ['isoWeek']],
'Wo' => ['ordinal', ['isoWeek', 'W']],
'w' => 'week',
'ww' => ['getPaddedUnit', ['week']],
'wo' => ['ordinal', ['week', 'w']],
'x' => ['valueOf', []],
'X' => 'timestamp',
'Y' => 'year',
'YY' => ['rawFormat', ['y']],
'YYYY' => ['getPaddedUnit', ['year', 4]],
'YYYYY' => ['getPaddedUnit', ['year', 5]],
'YYYYYY' => static fn (CarbonInterface $date) => ($date->year < 0 ? '' : '+').
$date->getPaddedUnit('year', 6),
'z' => ['rawFormat', ['T']],
'zz' => 'tzName',
'Z' => ['getOffsetString', []],
'ZZ' => ['getOffsetString', ['']],
];
return $units;
}
/**
* Returns a unit of the instance padded with 0 by default or any other string if specified.
*
* @param string $unit Carbon unit name
* @param int $length Length of the output (2 by default)
* @param string $padString String to use for padding ("0" by default)
* @param int $padType Side(s) to pad (STR_PAD_LEFT by default)
*/
public function getPaddedUnit($unit, $length = 2, $padString = '0', $padType = STR_PAD_LEFT): string
{
return ($this->$unit < 0 ? '-' : '').str_pad((string) abs($this->$unit), $length, $padString, $padType);
}
/**
* Return a property with its ordinal.
*/
public function ordinal(string $key, ?string $period = null): string
{
$number = $this->$key;
$result = $this->translate('ordinal', [
':number' => $number,
':period' => (string) $period,
]);
return (string) ($result === 'ordinal' ? $number : $result);
}
/**
* Return the meridiem of the current time in the current locale.
*
* @param bool $isLower if true, returns lowercase variant if available in the current locale.
*/
public function meridiem(bool $isLower = false): string
{
$hour = $this->hour;
$index = $hour < static::HOURS_PER_DAY / 2 ? 0 : 1;
if ($isLower) {
$key = 'meridiem.'.($index + 2);
$result = $this->translate($key);
if ($result !== $key) {
return $result;
}
}
$key = "meridiem.$index";
$result = $this->translate($key);
if ($result === $key) {
$result = $this->translate('meridiem', [
':hour' => $this->hour,
':minute' => $this->minute,
':isLower' => $isLower,
]);
if ($result === 'meridiem') {
return $isLower ? $this->latinMeridiem : $this->latinUpperMeridiem;
}
} elseif ($isLower) {
$result = mb_strtolower($result);
}
return $result;
}
/**
* Returns the alternative number for a given date property if available in the current locale.
*
* @param string $key date property
*/
public function getAltNumber(string $key): string
{
return $this->translateNumber((int) (\strlen($key) > 1 ? $this->$key : $this->rawFormat($key)));
}
/**
* Format in the current language using ISO replacement patterns.
*
* @param string|null $originalFormat provide context if a chunk has been passed alone
*/
public function isoFormat(string $format, ?string $originalFormat = null): string
{
$result = '';
$length = mb_strlen($format);
$originalFormat ??= $format;
$inEscaped = false;
$formats = null;
$units = null;
for ($i = 0; $i < $length; $i++) {
$char = mb_substr($format, $i, 1);
if ($char === '\\') {
$result .= mb_substr($format, ++$i, 1);
continue;
}
if ($char === '[' && !$inEscaped) {
$inEscaped = true;
continue;
}
if ($char === ']' && $inEscaped) {
$inEscaped = false;
continue;
}
if ($inEscaped) {
$result .= $char;
continue;
}
$input = mb_substr($format, $i);
if (preg_match('/^(LTS|LT|l{1,4}|L{1,4})/', $input, $match)) {
if ($formats === null) {
$formats = $this->getIsoFormats();
}
$code = $match[0];
$sequence = $formats[$code] ?? preg_replace_callback(
'/MMMM|MM|DD|dddd/',
static fn ($code) => mb_substr($code[0], 1),
$formats[strtoupper($code)] ?? '',
);
$rest = mb_substr($format, $i + mb_strlen($code));
$format = mb_substr($format, 0, $i).$sequence.$rest;
$length = mb_strlen($format);
$input = $sequence.$rest;
}
if (preg_match('/^'.CarbonInterface::ISO_FORMAT_REGEXP.'/', $input, $match)) {
$code = $match[0];
if ($units === null) {
$units = static::getIsoUnits();
}
$sequence = $units[$code] ?? '';
if ($sequence instanceof Closure) {
$sequence = $sequence($this, $originalFormat);
} elseif (\is_array($sequence)) {
try {
$sequence = $this->{$sequence[0]}(...$sequence[1]);
} catch (ReflectionException | InvalidArgumentException | BadMethodCallException) {
$sequence = '';
}
} elseif (\is_string($sequence)) {
$sequence = $this->$sequence ?? $code;
}
$format = mb_substr($format, 0, $i).$sequence.mb_substr($format, $i + mb_strlen($code));
$i += mb_strlen((string) $sequence) - 1;
$length = mb_strlen($format);
$char = $sequence;
}
$result .= $char;
}
return $result;
}
/**
* List of replacements from date() format to isoFormat().
*/
public static function getFormatsToIsoReplacements(): array
{
static $replacements = null;
$replacements ??= [
'd' => true,
'D' => 'ddd',
'j' => true,
'l' => 'dddd',
'N' => true,
'S' => static fn ($date) => str_replace((string) $date->rawFormat('j'), '', $date->isoFormat('Do')),
'w' => true,
'z' => true,
'W' => true,
'F' => 'MMMM',
'm' => true,
'M' => 'MMM',
'n' => true,
't' => true,
'L' => true,
'o' => true,
'Y' => true,
'y' => true,
'a' => 'a',
'A' => 'A',
'B' => true,
'g' => true,
'G' => true,
'h' => true,
'H' => true,
'i' => true,
's' => true,
'u' => true,
'v' => true,
'E' => true,
'I' => true,
'O' => true,
'P' => true,
'Z' => true,
'c' => true,
'r' => true,
'U' => true,
'T' => true,
];
return $replacements;
}
/**
* Format as ->format() do (using date replacements patterns from https://php.net/manual/en/function.date.php)
* but translate words whenever possible (months, day names, etc.) using the current locale.
*/
public function translatedFormat(string $format): string
{
$replacements = static::getFormatsToIsoReplacements();
$context = '';
$isoFormat = '';
$length = mb_strlen($format);
for ($i = 0; $i < $length; $i++) {
$char = mb_substr($format, $i, 1);
if ($char === '\\') {
$replacement = mb_substr($format, $i, 2);
$isoFormat .= $replacement;
$i++;
continue;
}
if (!isset($replacements[$char])) {
$replacement = preg_match('/^[A-Za-z]$/', $char) ? "\\$char" : $char;
$isoFormat .= $replacement;
$context .= $replacement;
continue;
}
$replacement = $replacements[$char];
if ($replacement === true) {
static $contextReplacements = null;
if ($contextReplacements === null) {
$contextReplacements = [
'm' => 'MM',
'd' => 'DD',
't' => 'D',
'j' => 'D',
'N' => 'e',
'w' => 'e',
'n' => 'M',
'o' => 'YYYY',
'Y' => 'YYYY',
'y' => 'YY',
'g' => 'h',
'G' => 'H',
'h' => 'hh',
'H' => 'HH',
'i' => 'mm',
's' => 'ss',
];
}
$isoFormat .= '['.$this->rawFormat($char).']';
$context .= $contextReplacements[$char] ?? ' ';
continue;
}
if ($replacement instanceof Closure) {
$replacement = '['.$replacement($this).']';
$isoFormat .= $replacement;
$context .= $replacement;
continue;
}
$isoFormat .= $replacement;
$context .= $replacement;
}
return $this->isoFormat($isoFormat, $context);
}
/**
* Returns the offset hour and minute formatted with +/- and a given separator (":" by default).
* For example, if the time zone is 9 hours 30 minutes, you'll get "+09:30", with "@@" as first
* argument, "+09@@30", with "" as first argument, "+0930". Negative offset will return something
* like "-12:00".
*
* @param string $separator string to place between hours and minutes (":" by default)
*/
public function getOffsetString(string $separator = ':'): string
{
$second = $this->getOffset();
$symbol = $second < 0 ? '-' : '+';
$minute = abs($second) / static::SECONDS_PER_MINUTE;
$hour = self::floorZeroPad($minute / static::MINUTES_PER_HOUR, 2);
$minute = self::floorZeroPad(((int) $minute) % static::MINUTES_PER_HOUR, 2);
return "$symbol$hour$separator$minute";
}
/**
* Dynamically handle calls to the class.
*
* @param string $method magic method name called
* @param array $parameters parameters list
*
* @throws BadMethodCallException
*/
public static function __callStatic(string $method, array $parameters): mixed
{
if (!static::hasMacro($method)) {
foreach (static::getGenericMacros() as $callback) {
try {
return static::executeStaticCallable($callback, $method, ...$parameters);
} catch (BadMethodCallException) {
continue;
}
}
if (static::isStrictModeEnabled()) {
throw new UnknownMethodException(\sprintf('%s::%s', static::class, $method));
}
return null;
}
return static::executeStaticCallable(static::getMacro($method), ...$parameters);
}
/**
* Set specified unit to new given value.
*
* @param string $unit year, month, day, hour, minute, second or microsecond
* @param Month|int $value new value for given unit
*/
public function setUnit(string $unit, Month|int|float|null $value = null): static
{
if (\is_float($value)) {
$int = (int) $value;
if ((float) $int !== $value) {
throw new InvalidArgumentException(
"$unit cannot be changed to float value $value, integer expected",
);
}
$value = $int;
}
$unit = static::singularUnit($unit);
$value = self::monthToInt($value, $unit);
$dateUnits = ['year', 'month', 'day'];
if (\in_array($unit, $dateUnits)) {
return $this->setDate(...array_map(
fn ($name) => (int) ($name === $unit ? $value : $this->$name),
$dateUnits,
));
}
$units = ['hour', 'minute', 'second', 'micro'];
if ($unit === 'millisecond' || $unit === 'milli') {
$value *= 1000;
$unit = 'micro';
} elseif ($unit === 'microsecond') {
$unit = 'micro';
}
return $this->setTime(...array_map(
fn ($name) => (int) ($name === $unit ? $value : $this->$name),
$units,
));
}
/**
* Returns standardized singular of a given singular/plural unit name (in English).
*/
public static function singularUnit(string $unit): string
{
$unit = rtrim(mb_strtolower($unit), 's');
return match ($unit) {
'centurie' => 'century',
'millennia' => 'millennium',
default => $unit,
};
}
/**
* Returns standardized plural of a given singular/plural unit name (in English).
*/
public static function pluralUnit(string $unit): string
{
$unit = rtrim(strtolower($unit), 's');
return match ($unit) {
'century' => 'centuries',
'millennium', 'millennia' => 'millennia',
default => "{$unit}s",
};
}
public static function sleep(int|float $seconds): void
{
if (static::hasTestNow()) {
static::setTestNow(static::getTestNow()->avoidMutation()->addSeconds($seconds));
return;
}
(new NativeClock('UTC'))->sleep($seconds);
}
/**
* Dynamically handle calls to the class.
*
* @param string $method magic method name called
* @param array $parameters parameters list
*
* @throws UnknownMethodException|BadMethodCallException|ReflectionException|Throwable
*/
public function __call(string $method, array $parameters): mixed
{
$unit = rtrim($method, 's');
return $this->callDiffAlias($unit, $parameters)
?? $this->callHumanDiffAlias($unit, $parameters)
?? $this->callRoundMethod($unit, $parameters)
?? $this->callIsMethod($unit, $parameters)
?? $this->callModifierMethod($unit, $parameters)
?? $this->callPeriodMethod($method, $parameters)
?? $this->callGetOrSetMethod($method, $parameters)
?? $this->callMacroMethod($method, $parameters);
}
/**
* Return the Carbon instance passed through, a now instance in the same timezone
* if null given or parse the input if string given.
*/
protected function resolveCarbon(DateTimeInterface|string|null $date): self
{
if (!$date) {
return $this->nowWithSameTz();
}
if (\is_string($date)) {
return $this->transmitFactory(fn () => static::parse($date, $this->getTimezone()));
}
return $date instanceof self ? $date : $this->transmitFactory(static fn () => static::instance($date));
}
protected static function weekRotate(int $day, int $rotation): int
{
return (static::DAYS_PER_WEEK + $rotation % static::DAYS_PER_WEEK + $day) % static::DAYS_PER_WEEK;
}
protected function executeCallable(callable $macro, ...$parameters)
{
if ($macro instanceof Closure) {
$boundMacro = @$macro->bindTo($this, static::class) ?: @$macro->bindTo(null, static::class);
return \call_user_func_array($boundMacro ?: $macro, $parameters);
}
return \call_user_func_array($macro, $parameters);
}
protected function executeCallableWithContext(callable $macro, ...$parameters)
{
return static::bindMacroContext($this, function () use (&$macro, &$parameters) {
return $this->executeCallable($macro, ...$parameters);
});
}
protected function getAllGenericMacros(): Generator
{
yield from $this->localGenericMacros ?? [];
yield from $this->transmitFactory(static fn () => static::getGenericMacros());
}
protected static function getGenericMacros(): Generator
{
foreach ((FactoryImmutable::getInstance()->getSettings()['genericMacros'] ?? []) as $list) {
foreach ($list as $macro) {
yield $macro;
}
}
}
protected static function executeStaticCallable(callable $macro, ...$parameters)
{
return static::bindMacroContext(null, function () use (&$macro, &$parameters) {
if ($macro instanceof Closure) {
$boundMacro = @Closure::bind($macro, null, static::class);
return \call_user_func_array($boundMacro ?: $macro, $parameters);
}
return \call_user_func_array($macro, $parameters);
});
}
protected function getTranslatedFormByRegExp($baseKey, $keySuffix, $context, $subKey, $defaultValue)
{
$key = $baseKey.$keySuffix;
$standaloneKey = "{$key}_standalone";
$baseTranslation = $this->getTranslationMessage($key);
if ($baseTranslation instanceof Closure) {
return $baseTranslation($this, $context, $subKey) ?: $defaultValue;
}
if (
$this->getTranslationMessage("$standaloneKey.$subKey") &&
(!$context || (($regExp = $this->getTranslationMessage("{$baseKey}_regexp")) && !preg_match($regExp, $context)))
) {
$key = $standaloneKey;
}
return $this->getTranslationMessage("$key.$subKey", null, $defaultValue);
}
private function callGetOrSetMethod(string $method, array $parameters): mixed
{
if (preg_match('/^([a-z]{2,})(In|Of)([A-Z][a-z]+)$/', $method)) {
$localStrictModeEnabled = $this->localStrictModeEnabled;
$this->localStrictModeEnabled = true;
try {
return $this->callGetOrSet($method, $parameters[0] ?? null);
} catch (UnknownGetterException|UnknownSetterException|ImmutableException) {
// continue to macro
} finally {
$this->localStrictModeEnabled = $localStrictModeEnabled;
}
}
return null;
}
private function callGetOrSet(string $name, mixed $value): mixed
{
if ($value !== null) {
if (\is_string($value) || \is_int($value) || \is_float($value) || $value instanceof DateTimeZone || $value instanceof Month) {
return $this->set($name, $value);
}
return null;
}
return $this->get($name);
}
private function getUTCUnit(string $unit): ?string
{
if (str_starts_with($unit, 'Real')) {
return substr($unit, 4);
}
if (str_starts_with($unit, 'UTC')) {
return substr($unit, 3);
}
return null;
}
private function callDiffAlias(string $method, array $parameters): mixed
{
if (preg_match('/^(diff|floatDiff)In(Real|UTC|Utc)?(.+)$/', $method, $match)) {
$mode = strtoupper($match[2] ?? '');
$betterMethod = $match[1] === 'floatDiff' ? str_replace('floatDiff', 'diff', $method) : null;
if ($mode === 'REAL') {
$mode = 'UTC';
$betterMethod = str_replace($match[2], 'UTC', $betterMethod ?? $method);
}
if ($betterMethod) {
@trigger_error(
"Use the method $betterMethod instead to make it more explicit about what it does.\n".
'On next major version, "float" prefix will be removed (as all diff are now returning floating numbers)'.
' and "Real" methods will be removed in favor of "UTC" because what it actually does is to convert both'.
' dates to UTC timezone before comparison, while by default it does it only if both dates don\'t have'.
' exactly the same timezone (Note: 2 timezones with the same offset but different names are considered'.
" different as it's not safe to assume they will always have the same offset).",
\E_USER_DEPRECATED,
);
}
$unit = self::pluralUnit($match[3]);
$diffMethod = 'diffIn'.ucfirst($unit);
if (\in_array($unit, ['days', 'weeks', 'months', 'quarters', 'years'])) {
$parameters['utc'] = ($mode === 'UTC');
}
if (method_exists($this, $diffMethod)) {
return $this->$diffMethod(...$parameters);
}
}
return null;
}
private function callHumanDiffAlias(string $method, array $parameters): ?string
{
$diffSizes = [
// @mode diffForHumans
'short' => true,
// @mode diffForHumans
'long' => false,
];
$diffSyntaxModes = [
// @call diffForHumans
'Absolute' => CarbonInterface::DIFF_ABSOLUTE,
// @call diffForHumans
'Relative' => CarbonInterface::DIFF_RELATIVE_AUTO,
// @call diffForHumans
'RelativeToNow' => CarbonInterface::DIFF_RELATIVE_TO_NOW,
// @call diffForHumans
'RelativeToOther' => CarbonInterface::DIFF_RELATIVE_TO_OTHER,
];
$sizePattern = implode('|', array_keys($diffSizes));
$syntaxPattern = implode('|', array_keys($diffSyntaxModes));
if (preg_match("/^(?$sizePattern)(?$syntaxPattern)DiffForHuman$/", $method, $match)) {
$dates = array_filter($parameters, function ($parameter) {
return $parameter instanceof DateTimeInterface;
});
$other = null;
if (\count($dates)) {
$key = key($dates);
$other = current($dates);
array_splice($parameters, $key, 1);
}
return $this->diffForHumans($other, $diffSyntaxModes[$match['syntax']], $diffSizes[$match['size']], ...$parameters);
}
return null;
}
private function callIsMethod(string $unit, array $parameters): ?bool
{
if (!str_starts_with($unit, 'is')) {
return null;
}
$word = substr($unit, 2);
if (\in_array($word, static::$days, true)) {
return $this->isDayOfWeek($word);
}
return match ($word) {
// @call is Check if the current instance has UTC timezone. (Both isUtc and isUTC cases are valid.)
'Utc', 'UTC' => $this->utc,
// @call is Check if the current instance has non-UTC timezone.
'Local' => $this->local,
// @call is Check if the current instance is a valid date.
'Valid' => $this->year !== 0,
// @call is Check if the current instance is in a daylight saving time.
'DST' => $this->dst,
default => $this->callComparatorMethod($word, $parameters),
};
}
private function callComparatorMethod(string $unit, array $parameters): ?bool
{
$start = substr($unit, 0, 4);
$factor = -1;
if ($start === 'Last') {
$start = 'Next';
$factor = 1;
}
if ($start === 'Next') {
$lowerUnit = strtolower(substr($unit, 4));
if (static::isModifiableUnit($lowerUnit)) {
return $this->avoidMutation()->addUnit($lowerUnit, $factor, false)->isSameUnit($lowerUnit, ...($parameters ?: ['now']));
}
}
if ($start === 'Same') {
try {
return $this->isSameUnit(strtolower(substr($unit, 4)), ...$parameters);
} catch (BadComparisonUnitException) {
// Try next
}
}
if (str_starts_with($unit, 'Current')) {
try {
return $this->isCurrentUnit(strtolower(substr($unit, 7)));
} catch (BadComparisonUnitException | BadMethodCallException) {
// Try next
}
}
return null;
}
private function callModifierMethod(string $unit, array $parameters): ?static
{
$action = substr($unit, 0, 3);
$overflow = null;
if ($action === 'set') {
$unit = strtolower(substr($unit, 3));
}
if (\in_array($unit, static::$units, true)) {
return $this->setUnit($unit, ...$parameters);
}
if ($action === 'add' || $action === 'sub') {
$unit = substr($unit, 3);
$utcUnit = $this->getUTCUnit($unit);
if ($utcUnit) {
$unit = static::singularUnit($utcUnit);
return $this->{"{$action}UTCUnit"}($unit, ...$parameters);
}
if (preg_match('/^(Month|Quarter|Year|Decade|Century|Centurie|Millennium|Millennia)s?(No|With|Without|WithNo)Overflow$/', $unit, $match)) {
$unit = $match[1];
$overflow = $match[2] === 'With';
}
$unit = static::singularUnit($unit);
}
if (static::isModifiableUnit($unit)) {
return $this->{"{$action}Unit"}($unit, $this->getMagicParameter($parameters, 0, 'value', 1), $overflow);
}
return null;
}
private function callPeriodMethod(string $method, array $parameters): ?CarbonPeriod
{
if (str_ends_with($method, 'Until')) {
try {
$unit = static::singularUnit(substr($method, 0, -5));
return $this->range(
$this->getMagicParameter($parameters, 0, 'endDate', $this),
$this->getMagicParameter($parameters, 1, 'factor', 1),
$unit
);
} catch (InvalidArgumentException) {
// Try macros
}
}
return null;
}
private function callMacroMethod(string $method, array $parameters): mixed
{
return static::bindMacroContext($this, function () use (&$method, &$parameters) {
$macro = $this->getLocalMacro($method);
if (!$macro) {
foreach ($this->getAllGenericMacros() as $callback) {
try {
return $this->executeCallable($callback, $method, ...$parameters);
} catch (BadMethodCallException) {
continue;
}
}
if ($this->isLocalStrictModeEnabled()) {
throw new UnknownMethodException($method);
}
return null;
}
return $this->executeCallable($macro, ...$parameters);
});
}
private static function floorZeroPad(int|float $value, int $length): string
{
return str_pad((string) floor($value), $length, '0', STR_PAD_LEFT);
}
/**
* @template T of CarbonInterface
*
* @param T $date
*
* @return T
*/
private function mutateIfMutable(CarbonInterface $date): CarbonInterface
{
return $this instanceof DateTimeImmutable
? $this
: $this->modify('@'.$date->rawFormat('U.u'))->setTimezone($date->getTimezone());
}
}
src/Carbon/Traits/DeprecatedPeriodProperties.php 0000644 00000003617 14753612052 0016012 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\CarbonInterface;
use Carbon\CarbonInterval;
trait DeprecatedPeriodProperties
{
/**
* Period start in PHP < 8.2.
*
* @var CarbonInterface
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period start.
*/
public $start;
/**
* Period end in PHP < 8.2.
*
* @var CarbonInterface|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period end.
*/
public $end;
/**
* Period current iterated date in PHP < 8.2.
*
* @var CarbonInterface|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period current iterated date.
*/
public $current;
/**
* Period interval in PHP < 8.2.
*
* @var CarbonInterval|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period interval.
*/
public $interval;
/**
* Period recurrences in PHP < 8.2.
*
* @var int|float|null
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period recurrences.
*/
public $recurrences;
/**
* Period start included option in PHP < 8.2.
*
* @var bool
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period start included option.
*/
public $include_start_date;
/**
* Period end included option in PHP < 8.2.
*
* @var bool
*
* @deprecated PHP 8.2 this property is no longer in sync with the actual period end included option.
*/
public $include_end_date;
}
src/Carbon/Traits/Difference.php 0000644 00000125211 14753612052 0012557 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\Carbon;
use Carbon\CarbonImmutable;
use Carbon\CarbonInterface;
use Carbon\CarbonInterval;
use Carbon\CarbonPeriod;
use Carbon\Exceptions\UnknownUnitException;
use Carbon\Unit;
use Closure;
use DateInterval;
use DateTimeInterface;
/**
* Trait Difference.
*
* Depends on the following methods:
*
* @method bool lessThan($date)
* @method static copy()
* @method static resolveCarbon($date = null)
*/
trait Difference
{
/**
* Get the difference as a DateInterval instance.
* Return relative interval (negative if $absolute flag is not set to true and the given date is before
* current one).
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return DateInterval
*/
public function diffAsDateInterval($date = null, bool $absolute = false): DateInterval
{
$other = $this->resolveCarbon($date);
// Work-around for https://bugs.php.net/bug.php?id=81458
// It was initially introduced for https://bugs.php.net/bug.php?id=80998
// The very specific case of 80998 was fixed in PHP 8.1beta3, but it introduced 81458
// So we still need to keep this for now
if ($other->tz !== $this->tz) {
$other = $other->avoidMutation()->setTimezone($this->tz);
}
return parent::diff($other, $absolute);
}
/**
* Get the difference as a CarbonInterval instance.
* Return relative interval (negative if $absolute flag is not set to true and the given date is before
* current one).
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return CarbonInterval
*/
public function diffAsCarbonInterval($date = null, bool $absolute = false, array $skip = []): CarbonInterval
{
return CarbonInterval::diff($this, $this->resolveCarbon($date), $absolute, $skip)
->setLocalTranslator($this->getLocalTranslator());
}
/**
* @alias diffAsCarbonInterval
*
* Get the difference as a DateInterval instance.
* Return relative interval (negative if $absolute flag is not set to true and the given date is before
* current one).
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return CarbonInterval
*/
public function diff($date = null, bool $absolute = false, array $skip = []): CarbonInterval
{
return $this->diffAsCarbonInterval($date, $absolute, $skip);
}
/**
* @param Unit|string $unit microsecond, millisecond, second, minute,
* hour, day, week, month, quarter, year,
* century, millennium
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInUnit(Unit|string $unit, $date = null, bool $absolute = false, bool $utc = false): float
{
$unit = static::pluralUnit($unit instanceof Unit ? $unit->value : rtrim($unit, 'z'));
$method = 'diffIn'.$unit;
if (!method_exists($this, $method)) {
throw new UnknownUnitException($unit);
}
return $this->$method($date, $absolute, $utc);
}
/**
* Get the difference in years
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInYears($date = null, bool $absolute = false, bool $utc = false): float
{
$start = $this;
$end = $this->resolveCarbon($date);
if ($utc) {
$start = $start->avoidMutation()->utc();
$end = $end->avoidMutation()->utc();
}
$ascending = ($start <= $end);
$sign = $absolute || $ascending ? 1 : -1;
if (!$ascending) {
[$start, $end] = [$end, $start];
}
$yearsDiff = (int) $start->diff($end, $absolute)->format('%r%y');
/** @var Carbon|CarbonImmutable $floorEnd */
$floorEnd = $start->avoidMutation()->addYears($yearsDiff);
if ($floorEnd >= $end) {
return $sign * $yearsDiff;
}
/** @var Carbon|CarbonImmutable $ceilEnd */
$ceilEnd = $start->avoidMutation()->addYears($yearsDiff + 1);
$daysToFloor = $floorEnd->diffInDays($end);
$daysToCeil = $end->diffInDays($ceilEnd);
return $sign * ($yearsDiff + $daysToFloor / ($daysToCeil + $daysToFloor));
}
/**
* Get the difference in quarters.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInQuarters($date = null, bool $absolute = false, bool $utc = false): float
{
return $this->diffInMonths($date, $absolute, $utc) / static::MONTHS_PER_QUARTER;
}
/**
* Get the difference in months.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInMonths($date = null, bool $absolute = false, bool $utc = false): float
{
$start = $this;
$end = $this->resolveCarbon($date);
// Compare using UTC
if ($utc || ($end->timezoneName !== $start->timezoneName)) {
$start = $start->avoidMutation()->utc();
$end = $end->avoidMutation()->utc();
}
[$yearStart, $monthStart, $dayStart] = explode('-', $start->format('Y-m-dHisu'));
[$yearEnd, $monthEnd, $dayEnd] = explode('-', $end->format('Y-m-dHisu'));
$monthsDiff = (((int) $yearEnd) - ((int) $yearStart)) * static::MONTHS_PER_YEAR +
((int) $monthEnd) - ((int) $monthStart);
if ($monthsDiff > 0) {
$monthsDiff -= ($dayStart > $dayEnd ? 1 : 0);
} elseif ($monthsDiff < 0) {
$monthsDiff += ($dayStart < $dayEnd ? 1 : 0);
}
$ascending = ($start <= $end);
$sign = $absolute || $ascending ? 1 : -1;
$monthsDiff = abs($monthsDiff);
if (!$ascending) {
[$start, $end] = [$end, $start];
}
/** @var Carbon|CarbonImmutable $floorEnd */
$floorEnd = $start->avoidMutation()->addMonths($monthsDiff);
if ($floorEnd >= $end) {
return $sign * $monthsDiff;
}
/** @var Carbon|CarbonImmutable $ceilEnd */
$ceilEnd = $start->avoidMutation()->addMonths($monthsDiff + 1);
$daysToFloor = $floorEnd->diffInDays($end);
$daysToCeil = $end->diffInDays($ceilEnd);
return $sign * ($monthsDiff + $daysToFloor / ($daysToCeil + $daysToFloor));
}
/**
* Get the difference in weeks.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInWeeks($date = null, bool $absolute = false, bool $utc = false): float
{
return $this->diffInDays($date, $absolute, $utc) / static::DAYS_PER_WEEK;
}
/**
* Get the difference in days.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
* @param bool $utc Always convert dates to UTC before comparing (if not set, it will do it only if timezones are different)
*
* @return float
*/
public function diffInDays($date = null, bool $absolute = false, bool $utc = false): float
{
$date = $this->resolveCarbon($date);
$current = $this;
// Compare using UTC
if ($utc || ($date->timezoneName !== $current->timezoneName)) {
$date = $date->avoidMutation()->utc();
$current = $current->avoidMutation()->utc();
}
$negative = ($date < $current);
[$start, $end] = $negative ? [$date, $current] : [$current, $date];
$interval = $start->diffAsDateInterval($end);
$daysA = $this->getIntervalDayDiff($interval);
$floorEnd = $start->avoidMutation()->addDays($daysA);
$daysB = $daysA + ($floorEnd <= $end ? 1 : -1);
$ceilEnd = $start->avoidMutation()->addDays($daysB);
$microsecondsBetween = $floorEnd->diffInMicroseconds($ceilEnd);
$microsecondsToEnd = $floorEnd->diffInMicroseconds($end);
return ($negative && !$absolute ? -1 : 1)
* ($daysA * ($microsecondsBetween - $microsecondsToEnd) + $daysB * $microsecondsToEnd)
/ $microsecondsBetween;
}
/**
* Get the difference in days using a filter closure.
*
* @param Closure $callback
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInDaysFiltered(Closure $callback, $date = null, bool $absolute = false): int
{
return $this->diffFiltered(CarbonInterval::day(), $callback, $date, $absolute);
}
/**
* Get the difference in hours using a filter closure.
*
* @param Closure $callback
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInHoursFiltered(Closure $callback, $date = null, bool $absolute = false): int
{
return $this->diffFiltered(CarbonInterval::hour(), $callback, $date, $absolute);
}
/**
* Get the difference by the given interval using a filter closure.
*
* @param CarbonInterval $ci An interval to traverse by
* @param Closure $callback
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffFiltered(CarbonInterval $ci, Closure $callback, $date = null, bool $absolute = false): int
{
$start = $this;
$end = $this->resolveCarbon($date);
$inverse = false;
if ($end < $start) {
$start = $end;
$end = $this;
$inverse = true;
}
$options = CarbonPeriod::EXCLUDE_END_DATE | ($this->isMutable() ? 0 : CarbonPeriod::IMMUTABLE);
$diff = $ci->toPeriod($start, $end, $options)->filter($callback)->count();
return $inverse && !$absolute ? -$diff : $diff;
}
/**
* Get the difference in weekdays.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInWeekdays($date = null, bool $absolute = false): int
{
return $this->diffInDaysFiltered(
static fn (CarbonInterface $date) => $date->isWeekday(),
$this->resolveCarbon($date)->avoidMutation()->modify($this->format('H:i:s.u')),
$absolute,
);
}
/**
* Get the difference in weekend days using a filter.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return int
*/
public function diffInWeekendDays($date = null, bool $absolute = false): int
{
return $this->diffInDaysFiltered(
static fn (CarbonInterface $date) => $date->isWeekend(),
$this->resolveCarbon($date)->avoidMutation()->modify($this->format('H:i:s.u')),
$absolute,
);
}
/**
* Get the difference in hours.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInHours($date = null, bool $absolute = false): float
{
return $this->diffInMinutes($date, $absolute) / static::MINUTES_PER_HOUR;
}
/**
* Get the difference in minutes.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInMinutes($date = null, bool $absolute = false): float
{
return $this->diffInSeconds($date, $absolute) / static::SECONDS_PER_MINUTE;
}
/**
* Get the difference in seconds.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInSeconds($date = null, bool $absolute = false): float
{
return $this->diffInMilliseconds($date, $absolute) / static::MILLISECONDS_PER_SECOND;
}
/**
* Get the difference in microseconds.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInMicroseconds($date = null, bool $absolute = false): float
{
/** @var CarbonInterface $date */
$date = $this->resolveCarbon($date);
$value = ($date->timestamp - $this->timestamp) * static::MICROSECONDS_PER_SECOND +
$date->micro - $this->micro;
return $absolute ? abs($value) : $value;
}
/**
* Get the difference in milliseconds.
*
* @param \Carbon\CarbonInterface|\DateTimeInterface|string|null $date
* @param bool $absolute Get the absolute of the difference
*
* @return float
*/
public function diffInMilliseconds($date = null, bool $absolute = false): float
{
return $this->diffInMicroseconds($date, $absolute) / static::MICROSECONDS_PER_MILLISECOND;
}
/**
* The number of seconds since midnight.
*
* @return float
*/
public function secondsSinceMidnight(): float
{
return $this->diffInSeconds($this->copy()->startOfDay(), true);
}
/**
* The number of seconds until 23:59:59.
*
* @return float
*/
public function secondsUntilEndOfDay(): float
{
return $this->diffInSeconds($this->copy()->endOfDay(), true);
}
/**
* Get the difference in a human readable format in the current locale from current instance to an other
* instance given (or now if null given).
*
* @example
* ```
* echo Carbon::tomorrow()->diffForHumans() . "\n";
* echo Carbon::tomorrow()->diffForHumans(['parts' => 2]) . "\n";
* echo Carbon::tomorrow()->diffForHumans(['parts' => 3, 'join' => true]) . "\n";
* echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday()) . "\n";
* echo Carbon::tomorrow()->diffForHumans(Carbon::yesterday(), ['short' => true]) . "\n";
* ```
*
* @param Carbon|DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* ⦿ 'syntax' entry (see below)
* ⦿ 'short' entry (see below)
* ⦿ 'parts' entry (see below)
* ⦿ 'options' entry (see below)
* ⦿ 'skip' entry, list of units to skip (array of strings or a single string,
* ` it can be the unit name (singular or plural) or its shortcut
* ` (y, m, w, d, h, min, s, ms, µs).
* ⦿ 'aUnit' entry, prefer "an hour" over "1 hour" if true
* ⦿ 'altNumbers' entry, use alternative numbers if available
* ` (from the current language if true is passed, from the given language(s)
* ` if array or string is passed)
* ⦿ 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* ⦿ 'other' entry (see above)
* ⦿ 'minimumUnit' entry determines the smallest unit of time to display can be long or
* ` short form of the units, e.g. 'hour' or 'h' (default value: s)
* ⦿ 'locale' language in which the diff should be output (has no effect if 'translator' key is set)
* ⦿ 'translator' a custom translator to use to translator the output.
* if int passed, it adds modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*/
public function diffForHumans($other = null, $syntax = null, $short = false, $parts = 1, $options = null): string
{
/* @var CarbonInterface $this */
if (\is_array($other)) {
$other['syntax'] = \array_key_exists('syntax', $other) ? $other['syntax'] : $syntax;
$syntax = $other;
$other = $syntax['other'] ?? null;
}
$intSyntax = &$syntax;
if (\is_array($syntax)) {
$syntax['syntax'] = $syntax['syntax'] ?? null;
$intSyntax = &$syntax['syntax'];
}
$intSyntax = (int) ($intSyntax ?? static::DIFF_RELATIVE_AUTO);
$intSyntax = $intSyntax === static::DIFF_RELATIVE_AUTO && $other === null ? static::DIFF_RELATIVE_TO_NOW : $intSyntax;
$parts = min(7, max(1, (int) $parts));
$skip = \is_array($syntax) ? ($syntax['skip'] ?? []) : [];
$options ??= $this->localHumanDiffOptions ?? $this->transmitFactory(
static fn () => static::getHumanDiffOptions(),
);
return $this->diff($other, skip: (array) $skip)->forHumans($syntax, (bool) $short, $parts, $options);
}
/**
* @alias diffForHumans
*
* Get the difference in a human readable format in the current locale from current instance to an other
* instance given (or now if null given).
*
* @param Carbon|\DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* - 'other' entry (see above)
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function from($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
{
return $this->diffForHumans($other, $syntax, $short, $parts, $options);
}
/**
* @alias diffForHumans
*
* Get the difference in a human readable format in the current locale from current instance to an other
* instance given (or now if null given).
*/
public function since($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
{
return $this->diffForHumans($other, $syntax, $short, $parts, $options);
}
/**
* Get the difference in a human readable format in the current locale from an other
* instance given (or now if null given) to current instance.
*
* When comparing a value in the past to default now:
* 1 hour from now
* 5 months from now
*
* When comparing a value in the future to default now:
* 1 hour ago
* 5 months ago
*
* When comparing a value in the past to another value:
* 1 hour after
* 5 months after
*
* When comparing a value in the future to another value:
* 1 hour before
* 5 months before
*
* @param Carbon|\DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* - 'other' entry (see above)
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function to($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
{
if (!$syntax && !$other) {
$syntax = CarbonInterface::DIFF_RELATIVE_TO_NOW;
}
return $this->resolveCarbon($other)->diffForHumans($this, $syntax, $short, $parts, $options);
}
/**
* @alias to
*
* Get the difference in a human readable format in the current locale from an other
* instance given (or now if null given) to current instance.
*
* @param Carbon|\DateTimeInterface|string|array|null $other if array passed, will be used as parameters array, see $syntax below;
* if null passed, now will be used as comparison reference;
* if any other type, it will be converted to date and used as reference.
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* - 'other' entry (see above)
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function until($other = null, $syntax = null, $short = false, $parts = 1, $options = null)
{
return $this->to($other, $syntax, $short, $parts, $options);
}
/**
* Get the difference in a human readable format in the current locale from current
* instance to now.
*
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single unit)
* @param int $options human diff options
*
* @return string
*/
public function fromNow($syntax = null, $short = false, $parts = 1, $options = null)
{
$other = null;
if ($syntax instanceof DateTimeInterface) {
[$other, $syntax, $short, $parts, $options] = array_pad(\func_get_args(), 5, null);
}
return $this->from($other, $syntax, $short, $parts, $options);
}
/**
* Get the difference in a human readable format in the current locale from an other
* instance given to now
*
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single part)
* @param int $options human diff options
*
* @return string
*/
public function toNow($syntax = null, $short = false, $parts = 1, $options = null)
{
return $this->to(null, $syntax, $short, $parts, $options);
}
/**
* Get the difference in a human readable format in the current locale from an other
* instance given to now
*
* @param int|array $syntax if array passed, parameters will be extracted from it, the array may contains:
* - 'syntax' entry (see below)
* - 'short' entry (see below)
* - 'parts' entry (see below)
* - 'options' entry (see below)
* - 'join' entry determines how to join multiple parts of the string
* ` - if $join is a string, it's used as a joiner glue
* ` - if $join is a callable/closure, it get the list of string and should return a string
* ` - if $join is an array, the first item will be the default glue, and the second item
* ` will be used instead of the glue for the last item
* ` - if $join is true, it will be guessed from the locale ('list' translation file entry)
* ` - if $join is missing, a space will be used as glue
* if int passed, it add modifiers:
* Possible values:
* - CarbonInterface::DIFF_ABSOLUTE no modifiers
* - CarbonInterface::DIFF_RELATIVE_TO_NOW add ago/from now modifier
* - CarbonInterface::DIFF_RELATIVE_TO_OTHER add before/after modifier
* Default value: CarbonInterface::DIFF_ABSOLUTE
* @param bool $short displays short format of time units
* @param int $parts maximum number of parts to display (default value: 1: single part)
* @param int $options human diff options
*
* @return string
*/
public function ago($syntax = null, $short = false, $parts = 1, $options = null)
{
$other = null;
if ($syntax instanceof DateTimeInterface) {
[$other, $syntax, $short, $parts, $options] = array_pad(\func_get_args(), 5, null);
}
return $this->from($other, $syntax, $short, $parts, $options);
}
/**
* Get the difference in a human-readable format in the current locale from current instance to another
* instance given (or now if null given).
*
* @return string
*/
public function timespan($other = null, $timezone = null): string
{
if (\is_string($other)) {
$other = $this->transmitFactory(static fn () => static::parse($other, $timezone));
}
return $this->diffForHumans($other, [
'join' => ', ',
'syntax' => CarbonInterface::DIFF_ABSOLUTE,
'parts' => INF,
]);
}
/**
* Returns either day of week + time (e.g. "Last Friday at 3:30 PM") if reference time is within 7 days,
* or a calendar date (e.g. "10/29/2017") otherwise.
*
* Language, date and time formats will change according to the current locale.
*
* @param Carbon|\DateTimeInterface|string|null $referenceTime
* @param array $formats
*
* @return string
*/
public function calendar($referenceTime = null, array $formats = [])
{
/** @var CarbonInterface $current */
$current = $this->avoidMutation()->startOfDay();
/** @var CarbonInterface $other */
$other = $this->resolveCarbon($referenceTime)->avoidMutation()->setTimezone($this->getTimezone())->startOfDay();
$diff = $other->diffInDays($current, false);
$format = $diff <= -static::DAYS_PER_WEEK ? 'sameElse' : (
$diff < -1 ? 'lastWeek' : (
$diff < 0 ? 'lastDay' : (
$diff < 1 ? 'sameDay' : (
$diff < 2 ? 'nextDay' : (
$diff < static::DAYS_PER_WEEK ? 'nextWeek' : 'sameElse'
)
)
)
)
);
$format = array_merge($this->getCalendarFormats(), $formats)[$format];
if ($format instanceof Closure) {
$format = $format($current, $other) ?? '';
}
return $this->isoFormat((string) $format);
}
private function getIntervalDayDiff(DateInterval $interval): int
{
return (int) $interval->format('%r%a');
}
}
src/Carbon/Traits/IntervalRounding.php 0000644 00000003231 14753612052 0014014 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\CarbonInterval;
use Carbon\Exceptions\InvalidIntervalException;
use DateInterval;
/**
* Trait to call rounding methods to interval or the interval of a period.
*/
trait IntervalRounding
{
protected function callRoundMethod(string $method, array $parameters): ?static
{
$action = substr($method, 0, 4);
if ($action !== 'ceil') {
$action = substr($method, 0, 5);
}
if (\in_array($action, ['round', 'floor', 'ceil'])) {
return $this->{$action.'Unit'}(substr($method, \strlen($action)), ...$parameters);
}
return null;
}
protected function roundWith(DateInterval|string|float|int $precision, callable|string $function): ?static
{
$unit = 'second';
if ($precision instanceof DateInterval) {
$precision = CarbonInterval::instance($precision)->forHumans(['locale' => 'en']);
}
if (\is_string($precision) && preg_match('/^\s*(?\d+)?\s*(?\w+)(?\W.*)?$/', $precision, $match)) {
if (trim($match['other'] ?? '') !== '') {
throw new InvalidIntervalException('Rounding is only possible with single unit intervals.');
}
$precision = (int) ($match['precision'] ?: 1);
$unit = $match['unit'];
}
return $this->roundUnit($unit, $precision, $function);
}
}
src/Carbon/Traits/IntervalStep.php 0000644 00000004561 14753612052 0013151 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\Callback;
use Carbon\Carbon;
use Carbon\CarbonImmutable;
use Carbon\CarbonInterface;
use Closure;
use DateTimeImmutable;
use DateTimeInterface;
trait IntervalStep
{
/**
* Step to apply instead of a fixed interval to get the new date.
*
* @var Closure|null
*/
protected $step;
/**
* Get the dynamic step in use.
*
* @return Closure
*/
public function getStep(): ?Closure
{
return $this->step;
}
/**
* Set a step to apply instead of a fixed interval to get the new date.
*
* Or pass null to switch to fixed interval.
*
* @param Closure|null $step
*/
public function setStep(?Closure $step): void
{
$this->step = $step;
}
/**
* Take a date and apply either the step if set, or the current interval else.
*
* The interval/step is applied negatively (typically subtraction instead of addition) if $negated is true.
*
* @param DateTimeInterface $dateTime
* @param bool $negated
*
* @return CarbonInterface
*/
public function convertDate(DateTimeInterface $dateTime, bool $negated = false): CarbonInterface
{
/** @var CarbonInterface $carbonDate */
$carbonDate = $dateTime instanceof CarbonInterface ? $dateTime : $this->resolveCarbon($dateTime);
if ($this->step) {
$carbonDate = Callback::parameter($this->step, $carbonDate->avoidMutation());
return $carbonDate->modify(($this->step)($carbonDate, $negated)->format('Y-m-d H:i:s.u e O'));
}
if ($negated) {
return $carbonDate->rawSub($this);
}
return $carbonDate->rawAdd($this);
}
/**
* Convert DateTimeImmutable instance to CarbonImmutable instance and DateTime instance to Carbon instance.
*/
private function resolveCarbon(DateTimeInterface $dateTime): Carbon|CarbonImmutable
{
if ($dateTime instanceof DateTimeImmutable) {
return CarbonImmutable::instance($dateTime);
}
return Carbon::instance($dateTime);
}
}
src/Carbon/Traits/LocalFactory.php 0000644 00000003132 14753612052 0013104 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\Factory;
use Carbon\FactoryImmutable;
use Carbon\WrapperClock;
use Closure;
/**
* Remember the factory that was the current at the creation of the object.
*/
trait LocalFactory
{
/**
* The clock that generated the current instance (or FactoryImmutable::getDefaultInstance() if none)
*/
private ?WrapperClock $clock = null;
public function getClock(): ?WrapperClock
{
return $this->clock;
}
private function initLocalFactory(): void
{
$this->clock = FactoryImmutable::getCurrentClock();
}
/**
* Trigger the given action using the local factory of the object, so it will be transmitted
* to any object also using this trait and calling initLocalFactory() in its constructor.
*
* @template T
*
* @param Closure(): T $action
*
* @return T
*/
private function transmitFactory(Closure $action): mixed
{
$previousClock = FactoryImmutable::getCurrentClock();
FactoryImmutable::setCurrentClock($this->clock);
try {
return $action();
} finally {
FactoryImmutable::setCurrentClock($previousClock);
}
}
private function getFactory(): Factory
{
return $this->getClock()?->getFactory() ?? FactoryImmutable::getDefaultInstance();
}
}
src/Carbon/Traits/Localization.php 0000644 00000062726 14753612052 0013170 0 ustar 00
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Carbon\Traits;
use Carbon\CarbonInterface;
use Carbon\Exceptions\InvalidTypeException;
use Carbon\Exceptions\NotLocaleAwareException;
use Carbon\Language;
use Carbon\Translator;
use Carbon\TranslatorStrongTypeInterface;
use Closure;
use Symfony\Component\Translation\TranslatorBagInterface;
use Symfony\Contracts\Translation\LocaleAwareInterface;
use Symfony\Contracts\Translation\TranslatorInterface;
/**
* Trait Localization.
*
* Embed default and locale translators and translation base methods.
*/
trait Localization
{
use StaticLocalization;
/**
* Specific translator of the current instance.
*/
protected ?TranslatorInterface $localTranslator = null;
/**
* Return true if the current instance has its own translator.
*/
public function hasLocalTranslator(): bool
{
return isset($this->localTranslator);
}
/**
* Get the translator of the current instance or the default if none set.
*/
public function getLocalTranslator(): TranslatorInterface
{
return $this->localTranslator ?? $this->transmitFactory(static fn () => static::getTranslator());
}
/**
* Set the translator for the current instance.
*/
public function setLocalTranslator(TranslatorInterface $translator): self
{
$this->localTranslator = $translator;
return $this;
}
/**
* Returns raw translation message for a given key.
*
* @param TranslatorInterface|null $translator the translator to use
* @param string $key key to find
* @param string|null $locale current locale used if null
* @param string|null $default default value if translation returns the key
*
* @return string|Closure|null
*/
public static function getTranslationMessageWith($translator, string $key, ?string $locale = null, ?string $default = null)
{
if (!($translator instanceof TranslatorBagInterface && $translator instanceof TranslatorInterface)) {
throw new InvalidTypeException(
'Translator does not implement '.TranslatorInterface::class.' and '.TranslatorBagInterface::class.'. '.
(\is_object($translator) ? \get_class($translator) : \gettype($translator)).' has been given.',
);
}
if (!$locale && $translator instanceof LocaleAwareInterface) {
$locale = $translator->getLocale();
}
$result = self::getFromCatalogue($translator, $translator->getCatalogue($locale), $key);
return $result === $key ? $default : $result;
}
/**
* Returns raw translation message for a given key.
*
* @param string $key key to find
* @param string|null $locale current locale used if null
* @param string|null $default default value if translation returns the key
* @param TranslatorInterface $translator an optional translator to use
*
* @return string
*/
public function getTranslationMessage(string $key, ?string $locale = null, ?string $default = null, $translator = null)
{
return static::getTranslationMessageWith($translator ?? $this->getLocalTranslator(), $key, $locale, $default);
}
/**
* Translate using translation string or callback available.
*
* @param TranslatorInterface $translator an optional translator to use
* @param string $key key to find
* @param array $parameters replacement parameters
* @param int|float|null $number number if plural
*
* @return string
*/
public static function translateWith(TranslatorInterface $translator, string $key, array $parameters = [], $number = null): string
{
$message = static::getTranslationMessageWith($translator, $key, null, $key);
if ($message instanceof Closure) {
return (string) $message(...array_values($parameters));
}
if ($number !== null) {
$parameters['%count%'] = $number;
}
if (isset($parameters['%count%'])) {
$parameters[':count'] = $parameters['%count%'];
}
return (string) $translator->trans($key, $parameters);
}
/**
* Translate using translation string or callback available.
*
* @param string $key key to find
* @param array $parameters replacement parameters
* @param string|int|float|null $number number if plural
* @param TranslatorInterface|null $translator an optional translator to use
* @param bool $altNumbers pass true to use alternative numbers
*
* @return string
*/
public function translate(
string $key,
array $parameters = [],
string|int|float|null $number = null,
?TranslatorInterface $translator = null,
bool $altNumbers = false,
): string {
$translation = static::translateWith($translator ?? $this->getLocalTranslator(), $key, $parameters, $number);
if ($number !== null && $altNumbers) {
return str_replace((string) $number, $this->translateNumber((int) $number), $translation);
}
return $translation;
}
/**
* Returns the alternative number for a given integer if available in the current locale.
*
* @param int $number
*
* @return string
*/
public function translateNumber(int $number): string
{
$translateKey = "alt_numbers.$number";
$symbol = $this->translate($translateKey);
if ($symbol !== $translateKey) {
return $symbol;
}
if ($number > 99 && $this->translate('alt_numbers.99') !== 'alt_numbers.99') {
$start = '';
foreach ([10000, 1000, 100] as $exp) {
$key = "alt_numbers_pow.$exp";
if ($number >= $exp && $number < $exp * 10 && ($pow = $this->translate($key)) !== $key) {
$unit = floor($number / $exp);
$number -= $unit * $exp;
$start .= ($unit > 1 ? $this->translate("alt_numbers.$unit") : '').$pow;
}
}
$result = '';
while ($number) {
$chunk = $number % 100;
$result = $this->translate("alt_numbers.$chunk").$result;
$number = floor($number / 100);
}
return "$start$result";
}
if ($number > 9 && $this->translate('alt_numbers.9') !== 'alt_numbers.9') {
$result = '';
while ($number) {
$chunk = $number % 10;
$result = $this->translate("alt_numbers.$chunk").$result;
$number = floor($number / 10);
}
return $result;
}
return (string) $number;
}
/**
* Translate a time string from a locale to an other.
*
* @param string $timeString date/time/duration string to translate (may also contain English)
* @param string|null $from input locale of the $timeString parameter (`Carbon::getLocale()` by default)
* @param string|null $to output locale of the result returned (`"en"` by default)
* @param int $mode specify what to translate with options:
* - CarbonInterface::TRANSLATE_ALL (default)
* - CarbonInterface::TRANSLATE_MONTHS
* - CarbonInterface::TRANSLATE_DAYS
* - CarbonInterface::TRANSLATE_UNITS
* - CarbonInterface::TRANSLATE_MERIDIEM
* You can use pipe to group: CarbonInterface::TRANSLATE_MONTHS | CarbonInterface::TRANSLATE_DAYS
*
* @return string
*/
public static function translateTimeString(
string $timeString,
?string $from = null,
?string $to = null,
int $mode = CarbonInterface::TRANSLATE_ALL,
): string {
// Fallback source and destination locales
$from = $from ?: static::getLocale();
$to = $to ?: CarbonInterface::DEFAULT_LOCALE;
if ($from === $to) {
return $timeString;
}
// Standardize apostrophe
$timeString = strtr($timeString, ['’' => "'"]);
$fromTranslations = [];
$toTranslations = [];
foreach (['from', 'to'] as $key) {
$language = $$key;
$translator = Translator::get($language);
$translations = $translator->getMessages();
if (!isset($translations[$language])) {
return $timeString;
}
$translationKey = $key.'Translations';
$messages = $translations[$language];
$months = $messages['months'] ?? [];
$weekdays = $messages['weekdays'] ?? [];
$meridiem = $messages['meridiem'] ?? ['AM', 'PM'];
if (isset($messages['ordinal_words'])) {
$timeString = self::replaceOrdinalWords(
$timeString,
$key === 'from' ? array_flip($messages['ordinal_words']) : $messages['ordinal_words']
);
}
if ($key === 'from') {
foreach (['months', 'weekdays'] as $variable) {
$list = $messages[$variable.'_standalone'] ?? null;
if ($list) {
foreach ($$variable as $index => &$name) {
$name .= '|'.$messages[$variable.'_standalone'][$index];
}
}
}
}
$$translationKey = array_merge(
$mode & CarbonInterface::TRANSLATE_MONTHS ? static::getTranslationArray($months, static::MONTHS_PER_YEAR, $timeString) : [],
$mode & CarbonInterface::TRANSLATE_MONTHS ? static::getTranslationArray($messages['months_short'] ?? [], static::MONTHS_PER_YEAR, $timeString) : [],
$mode & CarbonInterface::TRANSLATE_DAYS ? static::getTranslationArray($weekdays, static::DAYS_PER_WEEK, $timeString) : [],
$mode & CarbonInterface::TRANSLATE_DAYS ? static::getTranslationArray($messages['weekdays_short'] ?? [], static::DAYS_PER_WEEK, $timeString) : [],
$mode & CarbonInterface::TRANSLATE_DIFF ? static::translateWordsByKeys([
'diff_now',
'diff_today',
'diff_yesterday',
'diff_tomorrow',
'diff_before_yesterday',
'diff_after_tomorrow',
], $messages, $key) : [],
$mode & CarbonInterface::TRANSLATE_UNITS ? static::translateWordsByKeys([
'year',
'month',
'week',
'day',
'hour',
'minute',
'second',
], $messages, $key) : [],
$mode & CarbonInterface::TRANSLATE_MERIDIEM ? array_map(function ($hour) use ($meridiem) {
if (\is_array($meridiem)) {
return $meridiem[$hour < static::HOURS_PER_DAY / 2 ? 0 : 1];
}
return $meridiem($hour, 0, false);
}, range(0, 23)) : [],
);
}
return substr(preg_replace_callback('/(?<=[\d\s+.\/,_-])('.implode('|', $fromTranslations).')(?=[\d\s+.\/,_-])/iu', function ($match) use ($fromTranslations, $toTranslations) {
[$chunk] = $match;
foreach ($fromTranslations as $index => $word) {
if (preg_match("/^$word\$/iu", $chunk)) {
return $toTranslations[$index] ?? '';
}
}
return $chunk; // @codeCoverageIgnore
}, " $timeString "), 1, -1);
}
/**
* Translate a time string from the current locale (`$date->locale()`) to an other.
*
* @param string $timeString time string to translate
* @param string|null $to output locale of the result returned ("en" by default)
*
* @return string
*/
public function translateTimeStringTo(string $timeString, ?string $to = null): string
{
return static::translateTimeString($timeString, $this->getTranslatorLocale(), $to);
}
/**
* Get/set the locale for the current instance.
*
* @param string|null $locale
* @param string ...$fallbackLocales
*
* @return $this|string
*/
public function locale(?string $locale = null, string ...$fallbackLocales): static|string
{
if ($locale === null) {
return $this->getTranslatorLocale();
}
if (!$this->localTranslator || $this->getTranslatorLocale($this->localTranslator) !== $locale) {
$translator = Translator::get($locale);
if (!empty($fallbackLocales)) {
$translator->setFallbackLocales($fallbackLocales);
foreach ($fallbackLocales as $fallbackLocale) {
$messages = Translator::get($fallbackLocale)->getMessages();
if (isset($messages[$fallbackLocale])) {
$translator->setMessages($fallbackLocale, $messages[$fallbackLocale]);
}
}
}
$this->localTranslator = $translator;
}
return $this;
}
/**
* Get the current translator locale.
*
* @return string
*/
public static function getLocale(): string
{
return static::getLocaleAwareTranslator()->getLocale();
}
/**
* Set the current translator locale and indicate if the source locale file exists.
* Pass 'auto' as locale to use the closest language to the current LC_TIME locale.
*
* @param string $locale locale ex. en
*/
public static function setLocale(string $locale): void
{
static::getLocaleAwareTranslator()->setLocale($locale);
}
/**
* Set the fallback locale.
*
* @see https://symfony.com/doc/current/components/translation.html#fallback-locales
*
* @param string $locale
*/
public static function setFallbackLocale(string $locale): void
{
$translator = static::getTranslator();
if (method_exists($translator, 'setFallbackLocales')) {
$translator->setFallbackLocales([$locale]);
if ($translator instanceof Translator) {
$preferredLocale = $translator->getLocale();
$translator->setMessages($preferredLocale, array_replace_recursive(
$translator->getMessages()[$locale] ?? [],
Translator::get($locale)->getMessages()[$locale] ?? [],
$translator->getMessages($preferredLocale),
));
}
}
}
/**
* Get the fallback locale.
*
* @see https://symfony.com/doc/current/components/translation.html#fallback-locales
*/
public static function getFallbackLocale(): ?string
{
$translator = static::getTranslator();
if (method_exists($translator, 'getFallbackLocales')) {
return $translator->getFallbackLocales()[0] ?? null;
}
return null;
}
/**
* Set the current locale to the given, execute the passed function, reset the locale to previous one,
* then return the result of the closure (or null if the closure was void).
*
* @param string $locale locale ex. en
* @param callable $func
*
* @return mixed
*/
public static function executeWithLocale(string $locale, callable $func): mixed
{
$currentLocale = static::getLocale();
static::setLocale($locale);
$newLocale = static::getLocale();
$result = $func(
$newLocale === 'en' && strtolower(substr((string) $locale, 0, 2)) !== 'en'
? false
: $newLocale,
static::getTranslator(),
);
static::setLocale($currentLocale);
return $result;
}
/**
* Returns true if the given locale is internally supported and has short-units support.
* Support is considered enabled if either year, day or hour has a short variant translated.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasShortUnits(string $locale): bool
{
return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
return ($newLocale && (($y = static::translateWith($translator, 'y')) !== 'y' && $y !== static::translateWith($translator, 'year'))) || (
($y = static::translateWith($translator, 'd')) !== 'd' &&
$y !== static::translateWith($translator, 'day')
) || (
($y = static::translateWith($translator, 'h')) !== 'h' &&
$y !== static::translateWith($translator, 'hour')
);
});
}
/**
* Returns true if the given locale is internally supported and has diff syntax support (ago, from now, before, after).
* Support is considered enabled if the 4 sentences are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasDiffSyntax(string $locale): bool
{
return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
if (!$newLocale) {
return false;
}
foreach (['ago', 'from_now', 'before', 'after'] as $key) {
if ($translator instanceof TranslatorBagInterface &&
self::getFromCatalogue($translator, $translator->getCatalogue($newLocale), $key) instanceof Closure
) {
continue;
}
if ($translator->trans($key) === $key) {
return false;
}
}
return true;
});
}
/**
* Returns true if the given locale is internally supported and has words for 1-day diff (just now, yesterday, tomorrow).
* Support is considered enabled if the 3 words are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasDiffOneDayWords(string $locale): bool
{
return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
return $newLocale &&
$translator->trans('diff_now') !== 'diff_now' &&
$translator->trans('diff_yesterday') !== 'diff_yesterday' &&
$translator->trans('diff_tomorrow') !== 'diff_tomorrow';
});
}
/**
* Returns true if the given locale is internally supported and has words for 2-days diff (before yesterday, after tomorrow).
* Support is considered enabled if the 2 words are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasDiffTwoDayWords(string $locale): bool
{
return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
return $newLocale &&
$translator->trans('diff_before_yesterday') !== 'diff_before_yesterday' &&
$translator->trans('diff_after_tomorrow') !== 'diff_after_tomorrow';
});
}
/**
* Returns true if the given locale is internally supported and has period syntax support (X times, every X, from X, to X).
* Support is considered enabled if the 4 sentences are translated in the given locale.
*
* @param string $locale locale ex. en
*
* @return bool
*/
public static function localeHasPeriodSyntax($locale)
{
return static::executeWithLocale($locale, function ($newLocale, TranslatorInterface $translator) {
return $newLocale &&
$translator->trans('period_recurrences') !== 'period_recurrences' &&
$translator->trans('period_interval') !== 'period_interval' &&
$translator->trans('period_start_date') !== 'period_start_date' &&
$translator->trans('period_end_date') !== 'period_end_date';
});
}
/**
* Returns the list of internally available locales and already loaded custom locales.
* (It will ignore custom translator dynamic loading.)
*
* @return array
*/
public static function getAvailableLocales()
{
$translator = static::getLocaleAwareTranslator();
return $translator instanceof Translator
? $translator->getAvailableLocales()
: [$translator->getLocale()];
}
/**
* Returns list of Language object for each available locale. This object allow you to get the ISO name, native
* name, region and variant of the locale.
*
* @return Language[]
*/
public static function getAvailableLocalesInfo()
{
$languages = [];
foreach (static::getAvailableLocales() as $id) {
$languages[$id] = new Language($id);
}
return $languages;
}
/**
* Get the locale of a given translator.
*
* If null or omitted, current local translator is used.
* If no local translator is in use, current global translator is used.
*/
protected function getTranslatorLocale($translator = null): ?string
{
if (\func_num_args() === 0) {
$translator = $this->getLocalTranslator();
}
$translator = static::getLocaleAwareTranslator($translator);
return $translator?->getLocale();
}
/**
* Throw an error if passed object is not LocaleAwareInterface.
*
* @param LocaleAwareInterface|null $translator
*
* @return LocaleAwareInterface|null
*/
protected static function getLocaleAwareTranslator($translator = null)
{
if (\func_num_args() === 0) {
$translator = static::getTranslator();
}
if ($translator && !($translator instanceof LocaleAwareInterface || method_exists($translator, 'getLocale'))) {
throw new NotLocaleAwareException($translator); // @codeCoverageIgnore
}
return $translator;
}
/**
* @param mixed $translator
* @param \Symfony\Component\Translation\MessageCatalogueInterface $catalogue
*
* @return mixed
*/
private static function getFromCatalogue($translator, $catalogue, string $id, string $domain = 'messages')
{
return $translator instanceof TranslatorStrongTypeInterface
? $translator->getFromCatalogue($catalogue, $id, $domain)
: $catalogue->get($id, $domain); // @codeCoverageIgnore
}
/**
* Return the word cleaned from its translation codes.
*
* @param string $word
*
* @return string
*/
private static function cleanWordFromTranslationString($word)
{
$word = str_replace([':count', '%count', ':time'], '', $word);
$word = strtr($word, ['’' => "'"]);
$word = preg_replace('/({\d+(,(\d+|Inf))?}|[\[\]]\d+(,(\d+|Inf))?[\[\]])/', '', $word);
return trim($word);
}
/**
* Translate a list of words.
*
* @param string[] $keys keys to translate.
* @param string[] $messages messages bag handling translations.
* @param string $key 'to' (to get the translation) or 'from' (to get the detection RegExp pattern).
*
* @return string[]
*/
private static function translateWordsByKeys($keys, $messages, $key): array
{
return array_map(function ($wordKey) use ($messages, $key) {
$message = $key === 'from' && isset($messages[$wordKey.'_regexp'])
? $messages[$wordKey.'_regexp']
: ($messages[$wordKey] ?? null);
if (!$message) {
return '>>DO NOT REPLACE<<';
}
$parts = explode('|', $message);
return $key === 'to'
? self::cleanWordFromTranslationString(end($parts))
: '(?:'.implode('|', array_map([static::class, 'cleanWordFromTranslationString'], $parts)).')';
}, $keys);
}
/**
* Get an array of translations based on the current date.
*
* @param callable $translation
* @param int $length
* @param string $timeString
*
* @return string[]
*/
private static function getTranslationArray($translation, $length, $timeString): array
{
$filler = '>>DO NOT REPLACE<<';
if (\is_array($translation)) {
return array_pad($translation, $length, $filler);
}
$list = [];
$date = static::now();
for ($i = 0; $i < $length; $i++) {
$list[] = $translation($date, $timeString, $i) ?? $filler;
}
return $list;
}
private static function replaceOrdinalWords(string $timeString, array $ordinalWords): string
{
return preg_replace_callback('/(?