在PHP中有多種擷取時間戳記的方法,而通常擷取到的時間都是unix時間戳記和我們正常看到的時間是不一樣的,那麼我們還需要對此進行格式化一下,本篇文章講的是PHP擷取到目前時間和PHP對Unix時間戳記的格式化,廢話少說我們一起來看看吧!
PHP時間戳記函數擷取指定日期的unix時間戳記 strtotime('2012-12-7')
樣本如下:
代碼如下:
<?php echo strtotime('2012-12-7'); //結果:1354838400 ?>
說明:返回2012年12月7日0點0分0秒時間戳記。
將當前年月日轉化為時間戳記:PHP時間戳記函數擷取當前日期的unix時間戳記,
樣本如下:
代碼如下:
<?php echo $time=intval(time()); ?>
明:返回目前時間 年月日時分秒的時間戳記。
將時間戳記轉化為年月日:
代碼如下:
<?php echo date("Y-m-d H:i:s",intval(time())); ?>
代碼如下:
<?php echo strtotime ("now"), "n"; echo strtotime ("10 September 2000"), "n"; echo strtotime ("+1 day"), "n"; echo strtotime ("+1 week"), "n"; echo strtotime ("+1 week 2 days 4 hours 2 seconds"), "n"; echo strtotime ("next Thursday"), "n"; echo strtotime ("last Monday"), "n"; ?>
PHP時間戳記函數擷取英文文本日期時間
便於比較,使用date將當時間戳記與指定時間戳記轉換成系統時間
(1)列印明天此時的時間戳記strtotime(”+1 day”)
目前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2009-01-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”+1 day”)) 結果:2009-01-23 09:40:25
(2)列印昨天此時的時間戳記strtotime(”-1 day”)
目前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2009-01-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”-1 day”)) 結果:2009-01-21 09:40:25
(3)列印下個星期此時的時間戳記strtotime(”+1 week”)
目前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2009-01-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”+1 week”)) 結果:2009-01-29 09:40:25
(4)列印上個星期此時的時間戳記strtotime(”-1 week”)
目前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2009-01-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”-1 week”)) 結果:2009-01-15 09:40:25
(5)列印指定下星期幾的時間戳記strtotime(”next Thursday”)
目前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2009-01-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”next Thursday”)) 結果:2009-01-29 00:00:00
(6)列印指定上星期幾的時間戳記strtotime(”last Thursday”)
目前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2009-01-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”last Thursday”)) 結果:2009-01-15 00:00:00
1、擷取目前時間方法date()
很簡單,這就是擷取時間的方法,格式為:date($format, $timestamp),format為格式、timestamp為時間戳記--可填參數。
2、擷取時間戳記方法time()、strtotime()
這兩個方法,都可以擷取php中unix時間戳記,time()為直接擷取得到,strtotime($time, $now)為將時間格式轉為時間戳記,$time為必填。清楚了這個,想瞭解更多,請繼續往下看。
3、 date($format)用法
比如:
echo date('Y-m-d') ,輸出結果:2012-03-22
echo date('Y-m-d H:i:s'),輸出結果:2012-03-22 23:00:00
echo date('Y-m-d', time()),輸出結果:2012-03-22 23:00:00(結果同上,只是多了一個時間戳記參數)(時間戳記轉換為日期格式的方法)
echo date('Y').'年'.date('m').'月'.date('d').'日',輸出結果:2012年3月22日
舉例就這幾個,只是格式的變通而已,下面是格式中各個字母的含義:
/**************格式中可使用字母的含義**************/
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"
4、strtotime($time)用法
比如:
echo strtotime('2012-03-22'),輸出結果:1332427715(此處結果為隨便寫的,僅作說明使用)
echo strtotime(date('Y-d-m')),輸出結果:(結合date(),結果同上)(時間日期轉換為時間戳記)
strtotime()還有個很強大的用法,參數可加入對於數位操作、年月日周英文字元,樣本如下:
echo date('Y-m-d H:i:s',strtotime('+1 day')),輸出結果:2012-03-23 23:30:33(會發現輸出明天此時的時間)
echo date('Y-m-d H:i:s',strtotime('-1 day')),輸出結果:2012-03-21 23:30:33(昨天此時的時間)
echo date('Y-m-d H:i:s',strtotime('+1 week')),輸出結果:2012-03-29 23:30:33(下個星期此時的時間)
echo date('Y-m-d H:i:s',strtotime('next Thursday')),輸出結果:2012-03-29 00:00:00(下個星期四此時的時間)
echo date('Y-m-d H:i:s',strtotime('last Thursday')),輸出結果:2012-03-15 00:00:00(上個星期四此時的時間)
等等,自己去變通研究吧,strtotime()方法可以通過英文文本的控制Unix時間戳記的顯示,而得到需要的時間日期格式。
5、php擷取目前時間的毫秒數
php本身沒有提供返回毫秒數的函數,但提供了microtime()方法,它會返回一個Array,包含兩個元素:一個是秒數、一個是小數表示的毫秒數,我們可以通過此方法擷取返回毫秒數,方法如下:
function getMillisecond() {list($s1, $s2) = explode(' ', microtime());return (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);}
猜你可能感興趣:
php DateTime的常用方法詳解
本文對DateTime對象使用的方法進行了一些整理,方便大家尋找和翻閱,有需要的可以參考學習。
PHP將DateTime對象轉化為友好時間顯示的實現代碼
PHP將DateTime對象轉化為友好時間顯示的實現代碼。複製代碼 代碼如下: ......