the Web Design Speciailist
php 時間各類函數
2017-09-08 17:19:56  PHP

可以利用 strtotime() 函數將字串資料轉為 timestamp,再進行計算。


  1. $atime="2008-06-24 09:15:42";
  2. $btime="2008-06-23 08:00:05";
  3. echo (strtotime($atime) - strtotime($btime)); //計算相差幾秒
  4. echo (strtotime($atime) - strtotime($btime))/3600; //計算相差幾小時
  5.  
  6. date("Y-m-d",strtotime("+1 day")); //明天


PHP date函數參數詳解


$t=time();

echo date("Y-m-d H:i:s",$t);

第一個參數的格式分別表示:

a - "am" 或是 "pm"

A - "AM" 或是 "PM"

d - 几日,二位數字,若不足二位則前面補零; 如: "01" 至 "31"

D - 星期几,三個英文字母; 如: "Fri"

F - 月份,英文全名; 如: "January"

h - 12 小時制的小時; 如: "01" 至 "12"

H - 24 小時制的小時; 如: "00" 至 "23"

g - 12 小時制的小時,不足二位不補零; 如: "1" 至 12"

G - 24 小時制的小時,不足二位不補零; 如: "0" 至 "23"

i - 分鐘; 如: "00" 至 "59"

j - 几日,二位數字,若不足二位不補零; 如: "1" 至 "31"

l - 星期几,英文全名; 如: "Friday"

m - 月份,二位數字,若不足二位則在前面補零; 如: "01" 至 "12"

n - 月份,二位數字,若不足二位則不補零; 如: "1" 至 "12"

M - 月份,三個英文字母; 如: "Jan"

s - 秒; 如: "00" 至 "59"

S - 字尾加英文序數,二個英文字母; 如: "th","nd"

t - 指定月份的天數; 如: "28" 至 "31"

U - 總秒數

w - 數字型的星期几,如: "0" (星期日) 至 "6" (星期六)

Y - 年,四位數字; 如: "1999"

y - 年,二位數字; 如: "99"

z - 一年中的第几天; 如: "0" 至 "365"

其它不在上列的字符則直接列出該字符


  1. strtotime("+1 week")
  2. $tomorrow = mktime (0,0,0,date("m") ,date("d")+1,date("Y"));
  3. $lastmonth = mktime (0,0,0,date("m")-1,date("d"), date("Y"));
  4. $nextyear = mktime (0,0,0,date("m"), date("d"), date("Y")+1);
  5. echo date( "Y-m-d H:i:s", mktime (0,0,0,date("m") ,date("d")-7,date("Y")) );
  6. echo date( "Y-m-d H:i:s", mktime (0,0,0,date("m") ,date("d"), date("Y")) );
  7. echo date("Y-m-d",strtotime($date)));
  8.