兩種增加方法:1.直接利用strtotime()函數計算時間間隔,可將間隔後的日期以UNIX時間戳的格式傳回,語法「strtotime(" 1 day")」;2、利用time()函數計算目前時間戳,並在目前時間戳記的基礎上加上一天的秒數即可,語法「time() (1 * 24 * 3600)」。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
php增加一天時間戳有兩種方法:
直接利用strtotime() 函數
利用time() 一天的秒數
方式1:利用strtotime() 函數
有時我們需要在一個日期上加減一定的時間間隔。可以使用 strtotime() 來計算一些日期時間間隔,並將間隔後的日期以UNIX時間戳記的格式傳回。
strtotime() 函數有兩種用法:一種是將字串形式的、用英文文字描述的日期時間解析為UNIX 時間戳,一種是用來計算一些日期時間的間隔。
範例:
<?php
header("Content-type:text/html;charset=utf-8");
echo "当前时间戳为:".strtotime("now")."<br>";
echo "格式化后:".date("Y-m-d H:i:s",strtotime("now"))."<br><br>";
echo "增加一天的时间戳为:".strtotime("+1 day")."<br>";
echo "格式化后:".date("Y-m-d H:i:s",strtotime("+1 day"));
?>
方式二:利用time() 一天的秒數
time() 函數傳回自Unix 紀元(January 1 1970 00:00:00 GMT)起的目前時間的秒數。
time() 間隔秒數就可取得目前時間戳記後幾天的時間戳記。因為本文求1天後的時間戳,因此間隔秒數為一天的秒數即可。
一天秒數的計算方法:1 * 24 * 3600
範例:
<?php
header("Content-type:text/html;charset=utf-8");
echo "当前时间戳为:".time()."<br>";
echo "格式化当后:".date("Y-m-d H:i:s",time())."<br><br>";
$interval = 1 * 24 * 3600;
echo "增加一天的时间戳为:".(time()+$interval)."<br>";
echo "格式化当后:".date("Y-m-d H:i:s",time()+$interval)."<br>";
?>
擴充知識:date() 函數
date() 函數格式化本機日期和時間,並傳回格式化的日期字串。
語法
date(format,timestamp);
傳回整數 timestamp 依照給定的格式字串而產生的字串。如果沒有給出時間戳記則使用本地當前時間。換句話說,timestamp 是可選的,預設值為 time()。
參數 |
描述 |
#format |
必要。規定輸出日期字串的格式。可使用下列字元:
- d - 一個月中的第幾天(從01 到31)
- D - 星期幾的文字表示(以三個字母表示)
- j - 一個月中的第幾天,不帶前導零(1 到31)
- l('L' 的小寫形式)- 星期幾的完整的文本表示
- N - 星期幾的ISO-8601 數字格式表示(1 表示Monday[星期一],7 表示Sunday[星期日])
- S - 一個月中的第幾天的英語序數後綴(2 個字符:st、nd、rd 或th。與j 搭配使用)
- w - 星期幾的數字表示(0 表示Sunday[星期日],6 表示Saturday[星期六])
##z -一年中的第幾天(從0 到365)- W - 用ISO-8601 數字格式表示一年中的星期數字(每週從Monday[星期一]開始)
- F - 月份的完整的文本表示(January[一月份] 到December[十二月份])
- m - 月份的數字表示(從01 到12)
- M - 月份的短文本表示(用三個字母表示)
- n - 月份的數字表示,不帶前導零(1 到12)
- t - 給定月份中包含的天數
- L - 是否為閏年(如果是閏年則為1,否則為0)
- o - ISO-8601 標準下的年份數字
- Y - 年份的四位數表示
- y - 年份的兩位數表示
- a - 小寫形式表示:am 或pm
- A - 大寫形式表示:AM 或PM
- B - Swatch Internet Time(000 到999)
- g - 12 小時制,不含前導零(1 到12)
- G - 24 小時制,不含前導零(0到23)
- h - 12 小時制,帶前導零(01 到12)
- H - 24 小時制,帶前導零(00 到23)
- i - 分,帶前導零(00 到59)
- s - 秒,帶前導零(00 到59)
- u - 微秒(PHP 5.2.2 中新增的)
- e - 時區識別碼(例如:UTC、GMT、Atlantic/Azores)
- I(i 的大寫形式)- 日期是否是在夏令時(如果是夏令時則為1,否則為0)
- O - 格林威治時間(GMT)的差值,單位是小時(實例: 0100)
- P - 格林威治時間(GMT)的差值,單位是hours:minutes(PHP 5.1.3 新增的)
- T - 時區的簡寫(實例:EST、MDT)
- Z - 以秒為單位的時區偏移量。 UTC 以西時區的偏移量為負數(-43200 到50400)
- c - ISO-8601 標準的日期(例如2013-05-05T16:34:42 00:00)
- r - RFC 2822 格式的日期(例如Fri, 12 Apr 2013 12:01:05 0200)
- U - 自Unix 紀元(January 1 1970 00:00:00 GMT)以來經過的秒數
-
同時,也可使用下列預先定義常數(從PHP 5.1.0 開始可用):
DATE_ATOM - Atom(例如:2013-04-12T15:52:01 00:00)- DATE_COOKIE - HTTP Cookies(例如:Friday, 12-Apr-13 15:52:01 UTC)
- #DATE_ISO8601 - ISO-8601(例如:2013-04-12T15 :52:01 0000)
- DATE_RFC822 - RFC 822(例如:Fri, 12 Apr 13 15:52:01 0000)
- DATE_RFC850 - RFC 850(例如:Friday, 12-Apr-1 13 15:52:01 UTC)
- DATE_RFC1036 - RFC 1036(例如:Fri, 12 Apr 13 15:52:01 0000)
- DATE_RFC1123 - RFC 1123(例如:Fri22 Aprri 2013 15:52:01 0000)
- DATE_RFC2822 - RFC 2822(Fri, 12 Apr 2013 15:52:01 0000)##P
- #DATE_RFC3339 - 與(DATEA3.
- DATE_RSS - RSS(Fri, 12 Aug 2013 15:52:01 0000)
- DATE_W3C - 萬維網聯盟(例如:2013-04-12T15:52:01 00:00)
-
|
timestamp
#可選。規定一個整數的 Unix 時間戳。預設是目前的本地時間(time())。 |
|
推薦學習:《
PHP影片教學
》
以上是php怎麼增加一天時間戳的詳細內容。更多資訊請關注PHP中文網其他相關文章!