有沒有最簡單的方法來計算剩餘的天要birthady?生日前剩餘的天數 - laravel - 碳
有一個類似的問題:
Days remaining before birthday in php
,但我想用Carbon
庫。
喜歡:1989-6-30
更新
但它返回0
和
getDifferenceTwoDate('1991-5-22')
但它返回-38
有沒有最簡單的方法來計算剩餘的天要birthady?生日前剩餘的天數 - laravel - 碳
有一個類似的問題:
Days remaining before birthday in php
,但我想用Carbon
庫。
喜歡:1989-6-30
更新
但它返回0
和
getDifferenceTwoDate('1991-5-22')
但它返回-38
假設$生日是碳例子,你可以用一年恢復到今年:
$birthday->year(date('Y'));
然後你可以從現在得到的天差。第二個參數爲false確保過去的日期將返回負值,未來的日子將返回正值。
Carbon::now()->diffInDays($birthday, false);
所以,如果你得到-30
你需要根據明年來計算,如果你30,你有30天,直到他們的生日。
更新了我的問題。 –
@ S.M_Emamian,就像我說過的那樣,如果它返回負值,則需要根據下一年計算。 – Devon
您是否嘗試過Carbon提供的diffInDays功能? – ceejayoz
是的,但它返回一個大的日子:'$ startTime = Carbon :: parse(date('Y-m-d')); $ finishTime = Carbon :: parse($ date); return $ finishTime-> diffInDays($ startTime);' –
啊,我明白了。那麼你必須在那裏做更多的手動邏輯。取出生日期,做' - > year(date('Y'))'將今年設置爲今年(如果他們今年的生日已經過了,有一些邏輯可以設置爲* next * year) ),然後*以天爲單位進行差異。 – ceejayoz