<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # PHP Carbon 教程 > 原文: [https://zetcode.com/php/carbon/](https://zetcode.com/php/carbon/) PHP Carbon 教程展示了如何在帶有 Carbon 包的 PHP 中使用日期和時間。 我們使用`nesbot/carbon`包。 ## PHP Carbon Carbon 是一個 PHP 日期時間庫。 它是 PHP `DateTime`類的擴展。 ## PHP Carbon 設置 該包隨 composer 一起安裝。 ```php $ composer req nesbot/carbon ``` 我們安裝`nesbot/carbon`包。 ## 今天的日期 以下示例顯示如何獲取今天的日期。 `today.php` ```php <?php require __DIR__ . '/vendor/autoload.php'; use Carbon\Carbon; $now = Carbon::now(); echo "$now\n"; $today = Carbon::today(); echo "$today\n"; ``` `Carbon::now()`返回當前日期和時間,`Carbon:today()`返回當前日期。 ```php $ php today.php 2019-05-07 10:20:54 2019-05-07 00:00:00 ``` 這是一個示例輸出。 `Carbon::yesterday()`為昨天創建一個 Carbon 實例,為明天創建`Carbon::tomorrow()`。 `yes_tom.php` ```php <?php require __DIR__ . '/vendor/autoload.php'; use Carbon\Carbon; $yes = Carbon::yesterday(); echo "Yesterday: $yes\n"; $tom = Carbon::tomorrow(); echo "Tomorrow: $tom\n"; ``` 該示例顯示了昨天和明天的日期。 ## Carbon 來創建 Carbon 實例可以使用幾種創建方法來創建。 `create.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; $d1 = Carbon::create(2018, 8, 25, 22, 48, 00); echo $d1 . "\n"; $d2 = Carbon::create(2018, 8, 25, 22, 48, 00, 'Europe/Moscow'); echo $d2 . "\n"; $d3 = Carbon::createFromDate(2018, 8, 14, 'America/Chicago'); echo $d3 . "\n"; $d4 = Carbon::createFromTimestamp(1); echo $d4 . "\n"; ``` 該示例使用四種不同的方法創建 Carbon 實例。 ```php $d1 = Carbon::create(2018, 8, 25, 22, 48, 00); ``` `create()`方法根據日期和時間部分生成一個 Carbon 實例。 ```php $d2 = Carbon::create(2018, 8, 25, 22, 48, 00, 'Europe/Moscow'); ``` 在第二個示例中,我們還提供了一個時區。 ```php $d3 = Carbon::createFromDate(2018, 8, 14, 'America/Chicago'); ``` 使用`createFromDate()`,我們創建一個帶有日期部分的 Carbon 實例。 ```php $d4 = Carbon::createFromTimestamp(1); ``` `createFromTimestamp()`從 Unix 時間創建一個 Carbon 實例。 ```php $ php create.php 2018-08-25 22:48:00 2018-08-25 22:48:00 2018-08-14 03:33:16 1970-01-01 01:00:01 ``` This is a sample output. ## Carbon 相對修飾符 碳實例可以通過相對修飾符來創建,例如下一個星期五或一年之前。 `relative_modifiers.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; echo new Carbon('tomorrow') . "\n"; echo new Carbon('yesterday') . "\n"; echo new Carbon('next wednesday') . "\n"; echo new Carbon('last friday') . "\n"; echo new Carbon('this saturday') . "\n"; echo new Carbon('1 year ago') . "\n"; ``` 該示例使用幾個修飾符創建 Carbon 實例。 ```php $ php relative_modifiers.php 2019-05-08 00:00:00 2019-05-06 00:00:00 2019-05-08 00:00:00 2019-05-03 00:00:00 2019-05-11 00:00:00 2018-05-07 11:53:03 ``` This is a sample output. ## Carbon `next()`和`previous()` `next()`和`previous()`方法給出一周中給定日期的下一個/上一個出現。 `next_previous.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; $now = Carbon::now(); echo "$now\n"; $next_monday = $now->next(Carbon::MONDAY); echo "Next monday: $next_monday\n"; $prev_monday = $now->previous(Carbon::MONDAY); echo "Previous monday: $prev_monday\n"; ``` 該示例顯示了下一個和上一個星期一。 ```php $ php next_previous.php 2019-05-07 11:34:32 Next monday: 2019-05-13 00:00:00 Previous monday: 2019-05-06 00:00:00 ``` This is a sample output. ## Carbon 日期時間 Carbon 日期時間包括年,月,日或小時。 `parts.php` ```php <?php require __DIR__ . '/vendor/autoload.php'; use Carbon\Carbon; $now = Carbon::now(); echo $now->year . "\n"; echo $now->month . "\n"; echo $now->day . "\n"; echo $now->hour . "\n"; echo $now->second . "\n"; echo $now->dayOfWeek . "\n"; echo $now->dayOfYear . "\n"; echo $now->weekOfMonth . "\n"; echo $now->daysInMonth . "\n"; ``` 該示例顯示 Carbon 日期時間實例的各個部分。 ```php $ php parts.php 2019 5 7 10 31 2 126 1 31 ``` This is a sample output. ## Carbon 流式 API Carbon 還提供了方便的流式 API 來處理日期時間。 `fluent_api.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; $dt = Carbon::create(); $dt->year(2019)->month(5)->day(6)->hour(16)->minute(12)->second(53); echo $dt . "\n"; $dt2 = Carbon::create(); $dt2->setDate(2019, 5, 6)->setTime(16, 12, 53); echo $dt2 . "\n"; $dt3 = Carbon::create(); $dt3->setDate(2019, 5, 6)->setTime(16, 12, 53); echo $dt3 . "\n"; ``` 該示例使用流暢的 API 創建了三個 Carbon 實例。 ```php $ php fluent_api.php 2019-05-06 16:12:53 2019-05-06 16:12:53 2019-05-06 16:12:53 ``` 這是輸出。 ## Carbon 修改方法 Carbon 修改方法修改實例。 我們可以使用`copy()`方法來處理副本。 `copy_method.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; echo "Tomorrow: " . Carbon::tomorrow() . "\n"; echo "*************************\n"; $dt = new Carbon('tomorrow'); echo $dt->subDay() . "\n"; echo $dt . "\n"; echo "*************************\n"; $dt2 = new Carbon('tomorrow'); echo $dt2->copy()->subDay() . "\n"; echo $dt2 . "\n"; ``` 該示例介紹了`copy()`方法。 ```php $ php copy_method.php Tomorrow: 2019-05-08 00:00:00 ************************* 2019-05-07 00:00:00 2019-05-07 00:00:00 ************************* 2019-05-07 00:00:00 2019-05-08 00:00:00 ``` 在第二種情況下,原始實例是完整的。 ## 碳加減法 碳提供了兩種不同的方法來輕松增加和減少時間。 `add_sub.php` ```php <?php require __DIR__ . '/vendor/autoload.php'; use Carbon\Carbon; $now = Carbon::now(); echo "$now\n"; $d1 = $now->copy()->addDays(3); echo "$d1\n"; $d2 = $now->copy()->addHours(12); echo "$d2\n"; $d3 = $now->copy()->subDays(3); echo "$d3\n"; $d4 = $now->copy()->subHours(12); echo "$d4\n"; ``` 該示例介紹了`addDays()`,`addHours()`,`subDays()`和`subHours()`方法。 ```php $ php add_sub.php 2019-05-07 12:27:22 2019-05-10 12:27:22 2019-05-08 00:27:22 2019-05-04 12:27:22 2019-05-07 00:27:22 ``` This is a sample output. 下面的示例顯示其他加法和減法。 `add_sub.php` ```php <?php require __DIR__ . '/vendor/autoload.php'; use Carbon\Carbon; $now = Carbon::now(); $d1 = $now->copy()->addCenturies(2); echo $d1->toDateString() . "\n"; $d2 = $now->copy()->subCenturies(2); echo $d2->toDateString() . "\n"; $d3 = $now->copy()->addYears(2); echo $d3->toDateString() . "\n"; $d4 = $now->copy()->subYears(2); echo $d4->toDateString() . "\n"; $d5 = $now->copy()->addMonths(2); echo $d5->toDateString() . "\n"; $d6 = $now->copy()->subMonths(2); echo $d6->toDateString() . "\n"; ``` 我們顯示`addCenturies()`,`subCenturies()`,`addYears()`,`subYears()`,`addMonths()`和`subMonths()`。 ```php $ php add_sub2.php 2219-05-07 1819-05-07 2021-05-07 2017-05-07 2019-07-07 2019-03-07 ``` This is a sample output. ## Carbon 格式化日期時間 Carbon 提供了幾種格式化日期時間的方法。 `formatting.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; $dt = Carbon::now(); echo $dt . "\n"; echo $dt->toDateTimeString(). "\n"; echo "******************************\n"; echo $dt->toDateString(). "\n"; echo $dt->toFormattedDateString(). "\n"; echo $dt->toTimeString(). "\n"; echo $dt->toDayDateTimeString(). "\n"; echo "******************************\n"; echo $dt->format('Y-m-d h:i:s A'). "\n"; ``` 該示例提供了基本的格式化方法。 我們還可以使用`format()`生成自定義格式。 ```php $ php formatting.php 2019-05-07 10:36:09 2019-05-07 10:36:09 ****************************** 2019-05-07 May 7, 2019 10:36:09 Tue, May 7, 2019 10:36 AM ****************************** 2019-05-07 10:36:09 AM ``` This is a sample output. 下面的示例顯示其他常見的 Carbon 日期時間格式化方法。 `common_formats.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; $dt = Carbon::createFromFormat('Y-m-d H:i:s.u', '2019-05-06 16:45:00.613484'); echo $dt->toAtomString() . "\n"; echo $dt->toCookieString() . "\n"; echo $dt->toIso8601String() . "\n"; echo $dt->toIso8601ZuluString() . "\n"; echo $dt->toRfc822String() . "\n"; echo $dt->toRfc850String() . "\n"; echo $dt->toRfc1036String() . "\n"; echo $dt->toRfc1123String() . "\n"; echo $dt->toRfc3339String() . "\n"; echo $dt->toRfc7231String() . "\n"; echo $dt->toRssString() . "\n"; echo $dt->toW3cString() . "\n"; ``` 該示例介紹了其他十二種方法。 ```php $ php common_formats.php 2019-05-06T16:45:00+02:00 Monday, 06-May-2019 16:45:00 CEST 2019-05-06T16:45:00+02:00 2019-05-06T14:45:00Z Mon, 06 May 19 16:45:00 +0200 Monday, 06-May-19 16:45:00 CEST Mon, 06 May 19 16:45:00 +0200 Mon, 06 May 2019 16:45:00 +0200 2019-05-06T16:45:00+02:00 Mon, 06 May 2019 14:45:00 GMT Mon, 06 May 2019 16:45:00 +0200 2019-05-06T16:45:00+02:00 ``` This is the output. ## Carbon 比較日期時間 Carbon 具有比較日期時間的方法,例如`eq()`和`gt()`。 `comparing.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; $first = Carbon::create(2019, 5, 5, 22, 20, 1); $second = Carbon::create(2019, 5, 5, 20, 20, 1); echo $first . "\n"; echo $second . "\n"; var_dump($first->eq($second)); var_dump($first->ne($second)); var_dump($first->gt($second)); var_dump($first->gte($second)); var_dump($first->lt($second)); var_dump($first->lte($second)); ``` 該示例比較兩個日期時間值。 ```php $ php comparison.php 2019-05-05 22:20:01 2019-05-05 20:20:01 bool(false) bool(true) bool(true) bool(true) bool(false) bool(false) ``` This is the output. ## Carbon UTC 協調世界時(UTC)是世界各地用來調節時鐘和時間的主要時間標準。 `utc.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; $now = Carbon::now(); echo "$now\n"; isUtc($now); echo "Offset hours: {$now->offsetHours}\n"; echo "******************************\n"; $now->tz('UTC'); echo "$now\n"; isUtc($now); function isUtc($now): void { if ($now->utc) { echo "Datetime is in UTC\n"; } else { echo "Datetime is not in UTC\n"; } } ``` 該示例計算 UTC 時間(以小時為單位的偏移量),并確定日期時間是否為 UTC 時間。 ```php $ php utc.php 2019-05-07 11:14:18 Datetime is not in UTC Offset hours: 2 ****************************** 2019-05-07 09:14:18 Datetime is in UTC ``` This is a sample output. ## Carbon 人性化日期時間差異 應用通常以所謂的人性化格式顯示日期時間差異。 例如在一年或三分鐘前。 `humanized.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; echo Carbon::now()->addYear()->diffForHumans() . "\n"; Carbon::setLocale('de'); echo Carbon::now()->addYear()->diffForHumans() . "\n"; Carbon::setLocale('sk'); echo Carbon::now()->addYear()->diffForHumans() . "\n"; ``` 該示例顯示了三種語言環境中的日期時間差異。 ```php $ php humanize.php 1 year from now in 1 Jahr za rok ``` This is the output. ## Carbon 修飾符 修飾符方法對當前實例執行有用的修改。 他們可以檢索周,月或年的開始/結束。 `modifiers.php` ```php <?php require __DIR__ . "/vendor/autoload.php"; use Carbon\Carbon; echo "Start/End of day\n"; $dt = Carbon::create(2019, 5, 6, 12, 0, 0); echo $dt->copy()->startOfDay() . "\n"; echo $dt->copy()->endOfDay() . "\n"; echo "\nStart/End of month\n"; echo $dt->copy()->startOfMonth() . "\n"; echo $dt->copy()->endOfMonth() . "\n"; echo "\nStart/End of year\n"; echo $dt->copy()->startOfYear() . "\n"; echo $dt->copy()->endOfYear() . "\n"; echo "\nStart/End of decade\n"; echo $dt->copy()->startOfDecade() . "\n"; echo $dt->copy()->endOfDecade() . "\n"; echo "\nStart/End of century\n"; echo $dt->copy()->startOfCentury() . "\n"; echo $dt->copy()->endOfCentury() . "\n"; ``` 該示例提出了幾個修飾符。 ```php $ php modifiers.php Start/End of day 2019-05-06 00:00:00 2019-05-06 23:59:59 Start/End of month 2019-05-01 00:00:00 2019-05-31 23:59:59 Start/End of year 2019-01-01 00:00:00 2019-12-31 23:59:59 Start/End of decade 2010-01-01 00:00:00 2019-12-31 23:59:59 Start/End of century 2001-01-01 00:00:00 2100-12-31 23:59:59 ``` This is a sample output. 在本教程中,我們使用 PHP Carbon 來處理日期和時間。 您可能也對以下相關教程感興趣: [PHP PDO 教程](/php/pdo/), [Twig 教程](/php/twig/)和 [PHP 教程](/lang/php/),或列出[所有 PHP 教程](/all/#php) ]。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看