tkanye / common-carbon
An API extension for DateTime that supports 122 different languages, reference from nesbot Carbon
dev-main
2024-08-26 03:38 UTC
Requires
- php: ^8.1
- ext-json: *
Requires (Dev)
- doctrine/dbal: ^3.6.3 || ^4.0
- doctrine/orm: ^2.15.2 || ^3.0
- friendsofphp/php-cs-fixer: ^3.57.2
- kylekatarnls/multi-tester: ^2.5.3
- ondrejmirtes/better-reflection: ^6.25.0.4
- phpmd/phpmd: ^2.15.0
- phpstan/extension-installer: ^1.3.1
- phpstan/phpstan: ^1.11.2
- phpunit/phpunit: ^10.5.20
- squizlabs/php_codesniffer: ^3.9.0
Provides
This package is auto-updated.
Last update: 2024-10-26 04:16:00 UTC
README
This package is reference from Package Carbonhttps://carbon.nesbot.com ,an international PHP extension for DateTime.
The usage is completely consistent with Carbon
<?php use utils\Carbon\Carbon; printf("Right now is %s", Carbon::now()->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 tkanye/common-carbon
{ "require": { "tkanye/common-carbon": "^1" } }
<?php require 'vendor/autoload.php'; use utils\Carbon\Carbon; printf("Now: %s", Carbon::now());
Without Composer
Why are you not using composer? Download the Carbon latest release and put the contents of the ZIP archive into a directory in your project. Then require the file autoload.php
to get all classes and dependencies loaded on need.
<?php require 'path-to-Carbon-directory/autoload.php'; use utils\Carbon\Carbon; printf("Now: %s", Carbon::now());
Documentation
For more usage, https://carbon.nesbot.com/docs