成人精品一区二区三区中文字幕-成人精品一区二区三区-成人精品一级毛片-成人精品亚洲-日本在线视频一区二区-日本在线视频免费

導航首頁 ? 技術教程 ? Laravel中七個非常有用但很少人知道的Carbon方法
全站頭部文字 我要出現在這里
Laravel中七個非常有用但很少人知道的Carbon方法 775 2023-12-10   

前言

大家應該都知道,我們在很多時候使用 Carbon 來處理日期和時間,對嗎?但是又有多少人完整的閱讀過文檔了解它有那些方法呢?除了眾所周知的 now() 和 format() 方法,Carbon 還有很多其他有用的方法。

下面我們一起來看看吧。

1. isX: True/False

有很多方法來判斷 Carbon 對象是否是今天、周末、閏年等等,下面這些是官方文檔列出來的:

<?php
$dt->isWeekday();
$dt->isWeekend();
$dt->isYesterday();
$dt->isToday();
$dt->isTomorrow();
$dt->isFuture();
$dt->isPast();
$dt->isLeapYear();
$dt->isSameDay(Carbon::now());

2. isBirthday

除了上面的列表,Carbon 還有一個方法來判斷日期是否是某個人的生日。除了單開校驗月和日外,你還可以這么做:

$born = Carbon::createFromDate(1987, 4, 23);
$noCake = Carbon::createFromDate(2014, 9, 26);
$yesCake = Carbon::createFromDate(2014, 4, 23);
var_dump($born->isBirthday($noCake));  // bool(false)
var_dump($born->isBirthday($yesCake));

3. StartOfX 和 EndOfX 列表

下面是 startOfX 系列和 endOfX 系列:

$dt = Carbon::create(2012, 1, 31, 12, 0, 0);
echo $dt->startOfDay(); // 2012-01-31 00:00:00
echo $dt->endOfDay(); // 2012-01-31 23:59:59
echo $dt->startOfMonth(); // 2012-01-01 00:00:00
echo $dt->endOfMonth(); // 2012-01-31 23:59:59
echo $dt->startOfYear(); // 2012-01-01 00:00:00
echo $dt->endOfYear(); // 2012-12-31 23:59:59
echo $dt->startOfDecade(); // 2010-01-01 00:00:00
echo $dt->endOfDecade(); // 2019-12-31 23:59:59
echo $dt->startOfCentury(); // 2000-01-01 00:00:00
echo $dt->endOfCentury(); // 2099-12-31 23:59:59
echo $dt->startOfWeek(); // 2012-01-30 00:00:00
echo $dt->endOfWeek(); // 2012-02-05 23:59:59

4. Today, Tomorrow, Yesterday

三個簡單卻非常有用的方法,不需要調用 now(),然后替換掉時分秒,然后增加或者減去天數:

$today = Carbon::today(); // assuming 2016-06-24
echo $today;        // 2016-06-24 00:00:00
$tomorrow = Carbon::tomorrow();
echo $tomorrow;       // 2016-06-25 00:00:00
$yesterday = Carbon::yesterday();
echo $yesterday;       // 2016-06-23 00:00:00

5. DiffForHumans + 本地化

你可能用過這個叫做 diffForHumans() 的方法 ? 它會以一個便于人們閱讀的方法返回兩個日期之間的不同:

echo Carbon::now()->subDays(5)->diffForHumans(); // 5 days ago

但是你知道它也可以本地化嗎?只需要改變地點即可,如漢語:

Carbon::setLocale('zh');
echo Carbon::now()->addYear()->diffForHumans(); // 一年前

6. 改變 now() 為任意你想要的時間

$knownDate = Carbon::create(2001, 5, 21, 12); // 創建測試日期
Carbon::setTestNow($knownDate);      // set the mock 
echo Carbon::now();         // 2001-05-21 12:00:00

7. 星期常量

可以通過下面的常量來代替一周中的第幾天:

var_dump(Carbon::SUNDAY);       // int(0)
var_dump(Carbon::MONDAY);       // int(1)
var_dump(Carbon::TUESDAY);       // int(2)
var_dump(Carbon::WEDNESDAY);      // int(3)
var_dump(Carbon::THURSDAY);      // int(4)
var_dump(Carbon::FRIDAY);       // int(5)
var_dump(Carbon::SATURDAY);      // int(6)

上面提到的這些有用的方法你都了解嗎?可以在留言種列出你覺得有用的方法。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對綠夏網的支持。



主站蜘蛛池模板: 郑艳丽曹查理主演的影片| 黄视频免费看网站| 陈智熙| 人机头像| 哥哥的女人电影| 都市频道在线直播观看| 河北美术学院教务系统| 电影《塔蒂亚娜1》演员表| 蒋昌义| 欧美艹| 诺亚方舟电影免费完整版在线观看| 社会主义道德原则| 日韩大胆视频| 口加一笔变新字有几个| 性欧美女同| 隐藏的秘密电影免费观看全集| 媚狐传| 恐龙图片大全大图| 黑帮大佬365日| 生猴子视频| 男同视频在线| 妻5| 浙江卫视台节目表| 龚子棋| 早晚体重一样说明瘦了| 闵度允李采潭| 韩绛| 暗夜幕后在线观看完整版| 谭天| 听鬼故事长篇超吓人2000字| 夫妻性视频| 蜜桃成熟时免费视频| 牛的交配视频| 地老鼠| 极品少妇啪啪久久蜜臀| 爱欲告白| 手绢舞蹈视频大全| 柳堡的故事演员表| 探究事物的本质的读后感想| 洪金宝电影大全| 璐·德·拉格|

!??!站長長期在線接!??!

網站、小程序:定制開發/二次開發/仿制開發等

各種疑難雜癥解決/定制接口/定制采集等

站長微信:lxwl520520

站長QQ:1737366103