php 獲取今日, 昨日,明天 等 時間戳

2021-10-08 14:46:23 字數 4182 閱讀 2070

//當前時間戳,學過php 的都會

$nowtime

=time()

;//第一種獲取今日起始時間的方法

$begintoday

=strtotime

(date

('y-m-d'

,$nowtime))

;$endtoday

=strtotime

(date

('y-m-d h:i:s'

,$begintoday

+86399))

;//明日起始時間

$begintomorrow

=strtotime

(date

('y-m-d'

,$nowtime

+86400))

;$endtomorrow

=strtotime

(date

('y-m-d'

,$begintomorrow

+86399))

;//昨日起始時間

$beginyesterday

=strtotime

(date

('y-m-d'

,$nowtime

-86399))

;$endyesterdat

=strtotime

(date

('y-m-d h:i:s'

,$beginyesterday

+86400))

;//以此方法可以計算出 昨天,明天,甚至更長的起始時間

此方法使用了兩個函式 date 和 mktime

mktime

(hour,minute,second,month,day,year,is_dst)

;| 引數 | 描述 |

| hour |可選。規定小時。|

| minute|可選。規定分。|

| second|可選。規定秒。|

| month|可選。規定月。|

| day|可選。規定天。|

| is_dst|可選。如果時間在夏令時 (

dst) 期間,則設定為 1,否則設定為 0,若未知則設定為 -

1(預設)。如果未知,php 會自己進行查詢(可能產生意外的結果)。注意:該引數在 php

5.1.0 中被廢棄。取而代之使用的是新的時區處理特性。|

/* *php獲取今日開始時間戳和結束時間戳

*date('m') 月份的數字表示(從 01 到 12)

date('d') 乙個月中的第幾天(從 01 到 31)

date('y') 年

date('w') 星期幾的數字表示(0 表示 sunday[星期日],6 表示 saturday[星期六])

*///本日起始時間

$begintoday

=mktime(0

,0,0

,date

('m'),

date

('d'),

date

('y'))

;$endtoday

=mktime(0

,0,0

,date

('m'),

date

('d')+

1,date

('y'))

-1;//昨日起始時間

$beginyesterday

=mktime(0

,0,0

,date

('m'),

date

('d')-

1,date

('y'))

;$endyesterday

=mktime(0

,0,0

,date

('m'),

date

('d'),

date

('y'))

-1;//明日起始時間

$begintomorrow

=mktime(0

,0,0

,date

('m'),

date

('d')+

1,date

('y'))

;$endtomorrow

=mktime(0

,0,0

,date

('m'),

date

('d')+

2,date

('y'))

-1;//本週起始時間

$beginweek

=mktime(0

,0,0

,date

('m'),

date

('d')-

date

('w')+

1,date

('y'))

;$endweek

=mktime(23

,59,59

,date

('m'),

date

('d')-

date

('w')+

7,date

('y'))

;//獲取其他周的起始時間$n=

1;//n 的取值為整數

$begintime

=mktime(0

,0,0

,date

('m'),

date

('d')-

date

('w')+

1+$n*

7,date

('y'))

;$endtime

=mktime(23

,59,59

,date

('m'),

date

('d')-

date

('w')+

7+$n*

7,date

('y'))

;//獲取本月起始時間$n=

0;//n 的取值為整數

$beginmonth

=mktime(0

,0,0

,date

('m'),

1,date

('y'))

;$endmonth

=mktime(23

,59,59

,date

('m'),

date

('t'),

date

('y'))

;

如果你使用的是tp5 那麼你就可以使用tp 的 擴充套件庫 time

安裝tp time 擴充套件庫

composer require topthink/think-helper=1.0.*

在頭部檔案引入

use think\helper\time;

// 今日開始和結束的時間戳

time:

:today()

;// 昨日開始和結束的時間戳

time:

:yesterday()

;// 本週開始和結束的時間戳

time:

:week()

;// 上週開始和結束的時間戳

time:

:lastweek()

;// 本月開始和結束的時間戳

time:

:month()

;// 上月開始和結束的時間戳

time:

:lastmonth()

;// 今年開始和結束的時間戳

time:

:year()

;// 去年開始和結束的時間戳

time:

:lastyear()

;// 獲取7天前零點到現在的時間戳

time:

:daytonow(7

)// 獲取7天前零點到昨日結束的時間戳

time:

:daytonow(7

,true

)// 獲取7天前的時間戳

time:

:daysago(7

)// 獲取7天後的時間戳

time:

:daysafter(7

)// 天數轉換成秒數

time:

:daystosecond(5

)// 週數轉換成秒數

time:

:weektosecond(5

)

獲取明天的時間戳

最近剛做了乙個h5的專案,專案需求是希望預約時間最晚為明天18點前,通過寫了個簡單的驗證方法來執行。var time time val 選擇框內的值 var tomorrowd newdate 當前時間 var hourtime newdate time.replace g 替換 為 的當前時間 v...

Mysql 獲取昨日 今日 明日凌晨時間

前一天0點 2020 06 29 00 00 00 select from unixtime unix timestamp cast sysdate as date interval 1 day 當前23 59 59 2020 06 30 23 59 59 select date sub date ...

Mysql 獲取昨日 今日 明日凌晨時間

獲取今日凌晨時間 格式 描述 a 縮寫星期名 b縮寫月名 c月,數值 d帶有英文本首的月中的天 d月的天,數值 00 31 e月的天,數值 0 31 f微秒 h小時 00 23 h小時 01 12 i小時 01 12 i分鐘,數值 00 59 j年的天 001 366 k小時 0 23 l小時 1 ...