《PHP教程:在php和MySql中計算時間差的方法詳解》要點:
本文介紹了PHP教程:在php和MySql中計算時間差的方法詳解,希望對您有用。如果有疑問,可以聯系我們。
PHP實戰在php中計算時間差有時候是件麻煩的事!不外只要你掌握了日期時間函數的用法那這些也就變的簡單了.
PHP實戰最近在研究自己愛圍脖的時候就要計算到愛情天數,這需要php根據每天的日期進行計算,下面就來談談實現這種日期計算的幾種方法:
PHP實戰(1) 如果有數據庫就很容易了!若是MSSQL可以使用觸發器!用專門計算日期差的函數datediff()便可!若是MYSQL那就用兩個日期字段的差值計算的計算結果保留在另一個數值型字段中!用時調用便可!
PHP實戰(2)如果沒有數據庫,那就得完全用php的時間日期函數!
PHP實戰下面主要闡明之:
PHP實戰例:計算1998年5月3日到1999-6-5的天數:
PHP實戰其中$days為得到的天數;
PHP實戰若mktime()中的參數缺省,那表現使用當前日期,這樣便可計算從借書日期至今的天數.
PHP實戰最后說一下SQL的計算辦法:
PHP實戰DateDiff 函數
PHP實戰描述:返回兩個日期之間的時間間隔.
PHP實戰語法:
PHP實戰DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear>)
interval: 必選.字符串表達式,表現用于計算 date1 和 date2 之間的時間間隔.有關數值,請參閱“設置”部分.
PHP實戰date1, date2: 必選.日期表達式.用于計算的兩個日期.
PHP實戰firstdayofweek: 可選.指定星期中第一天的常數.如果沒有指定,則默認為星期日.有關數值,請參閱“設置”部門.
PHP實戰firstweekofyear: 可選.指定一年中第一周的常數.如果沒有指定,則默認為 1 月 1 日所在的星期.有關數值,請參閱“設置”部門.
PHP實戰interval 參數可以有以下值:
PHP實戰yyyy (年)
q (季度)
m (月)
y (一年的日數)
d (日)
w (一周的日數)
ww (周)
h (小時)
n (分鐘)
s (秒)
firstdayofweek 參數可以有以下值:
PHP實戰(以下分離為:常數 值 描述)
PHP實戰vbUseSystem 0 使用區域語言支持 (NLS) API 設置.
vbSunday 1 星期日(默認)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
firstweekofyear 參數可以有以下值:
PHP實戰(以下分離為:常數 值 描述)
PHP實戰vbUseSystem 0 使用區域語言支持 (NLS) API 設置.
vbFirstJan1 1 由 1 月 1 日所在的星期開始(默認).
vbFirstFourDays 2 由在新年中至少有四天的第一周開始.
vbFirstFullWeek 3 由在新的一年中第一個完整的周開始.
闡明:DateDiff 函數用于判斷在兩個日期之間存在的指定時間間隔的數目.
PHP實戰例如可以使用 DateDiff 計算兩個日期相差的天數,或者當天到昔時最后一天之間的星期數.
PHP實戰要計算 date1 和 date2 相差的天數,可以使用“一年的日數”(“y”)或“日”(“d”).當 interval 為“一周的日數”(“w”)時,DateDiff 返回兩個日期之間的星期數.
PHP實戰如果 date1 是星期一,則 DateDiff 計算到 date2 之前星期一的數目.此結果包括 date2 而不包括 date1.
PHP實戰如果 interval 是“周”(“ww”),則 DateDiff 函數返回日歷表中兩個日期之間的星期數.函數計算 date1 和 date2 之間星期日的數目.
PHP實戰如果 date2 是星期日,DateDiff 將計算 date2,但即使 date1 是星期日,也不會計算 date1.
PHP實戰如果 date1 晚于 date2,則 DateDiff 函數返回負數. firstdayofweek 參數會對使用“w”和“ww”間隔符號的計算發生影響.
PHP實戰如果 date1 或 date2 是日期文字,則指定的年度會成為日期的固定部分.但是如果 date1 或 date2 被包含在引號 (“ ”) 中并且省略年份,則在代碼中每次計算 date1 或 date2 表達式時,將插入當前年份.這樣就可以編寫適用于不同年份的程序代碼.
PHP實戰在 interval 為“年”(“yyyy”)時,比擬 12 月 31 日和來年的 1 月 1 日,雖然實際上只相差一天,DateDiff 返回 1 表示相差一個年份.
PHP實戰DatePart 函數
PHP實戰描述:返回給定日期的指定部門. 語法:
PHP實戰DatePart(interval, date[, firstdayofweek[, firstweekofyear>)
DatePart: 函數的語法有以下參數:
interval: 必選.字符串表達式,表現要返回的時間間隔.有關數值,請參閱“設置”部分.
date: 必選.要計算的日期表達式.
firstdayofweek: 可選.指定星期中的第一天的常數.如果沒有指定,則默認為星期日.有關數值,請參閱“設置”部分.
firstweekofyear: 可選.指定一年中第一周的常數.如果沒有指定,則默認為 1 月 1 日所在的星期.有關數值,請參閱“設置”部分.
其中interval 參數可以有以下值: yyyy (年) 、q (季度) 、m (月) 、y (一年的日數) 、d (日) 、w (一周的日數) 、ww (周) 、h (小時) 、n (分鐘) 、s (秒)
PHP實戰此中firstdayofweek 參數可以有以下值:
PHP實戰(以下分離為:常數 值 描述)
PHP實戰vbUseSystem 0 使用區域語言支持 (NLS) API 設置.
vbSunday 1 星期日(默認)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
firstweekofyear 參數可以有以下值:
PHP實戰(以下分離為:常數 值 描述)
PHP實戰vbUseSystem 0 使用區域語言支持 (NLS) API 設置.
vbFirstJan1 1 由 1 月 1 日所在的星期開始(默認).
vbFirstFourDays 2 由在新年中至少有四天的第一周開始.
vbFirstFullWeek 3 由在新的一年中第一個完整的周(不跨年度)開始.
闡明:DatePart 函數用于計算日期并返回指定的時間間隔.例如使用 DatePart 計算某一天是星期幾或當前的時間.
PHP實戰此中firstdayofweek 參數會影響使用“w”和“ww”間隔符號的計算.
PHP實戰如果 date 是日期文字,則指定的年度會成為日期的固定部分.但是如果 date 被包括在引號 (“ ”) 中,并且省略年份,則在代碼中每次計算 date 表達式時,將插入當前年份.這樣就可以編寫適用于不同年份的程序代碼!
PHP實戰以上所述就是本文的全部內容了,希望能夠對大家熟練掌握php有所贊助.
PHP實戰請您花一點時間將文章分享給您的朋友或者留下評論.我們將會由衷感激您的支持!
歡迎參與《PHP教程:在php和MySql中計算時間差的方法詳解》討論,分享您的想法,維易PHP學院為您提供專業教程。