一,PHP時間戳函數獲取指定日期的unix時間戳 strtotime(”2015-10-15″) 示例如下:
echo strtotime(”2015-10-15″) 結果:1444860000
說明:返回2015年10月15日0點0分0秒時間戳
二,PHP時間戳函數獲取英文文本日期時間 示例如下:
便於比較,使用date將當時間戳與指定時間戳轉換成系統時間
(1)打印明天此時的時間戳strtotime(”+1 day”)
當前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2015-10-15 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”+1 day”)) 結果:2010-10-16 09:40:25
(2)打印昨天此時的時間戳strtotime(”-1 day”)
當前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2015-10-15 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”-1 day”)) 結果:2015-10-14 09:40:25
(3)打印下個星期此時的時間戳strtotime(”+1 week”)
當前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2015-10-15 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”+1 week”)) 結果:2015-10-22 09:40:25
(4)打印上個星期此時的時間戳strtotime(”-1 week”)
當前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2015-15-15 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”-1 week”)) 結果:2015-10-08 09:40:25
(5)打印指定下星期幾的時間戳strtotime(”next Thursday”)
當前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2015-10-22 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”next Thursday”)) 結果:2015-10-22 00:00:00
(6)打印指定上星期幾的時間戳strtotime(”last Thursday”)
當前時間:echo date(”Y-m-d H:i:s”,time()) 結果:2015-10-15 09:40:25
指定時間:echo date(”Y-m-d H:i:s”,strtotime(”last Thursday”)) 結果:2015-10-08 00:00:00
以上PHP時間戳函數示例可知,strtotime能將任何英文文本的日期時間描述解析為Unix時間戳,我們結合mktime()或date()格式化日期時間獲取指定的時間戳,實現所需要的日期時間。
示例:
<?php
//時間戳轉日期
$date_time_array = getdate(1444898410);
$hours = $date_time_array["hours"];
$minutes = $date_time_array["minutes"];
$seconds = $date_time_array["seconds"];
$month = $date_time_array["mon"];
$day = $date_time_array["mday"];
$year = $date_time_array["year"];
echo "year:$year\nmonth:$month\nday:$day\nhour:$hours\nminutes:$minutes\nseconds:$seconds\n";
//正常日期轉時間戳
echo mktime(0, 0, 0, 10, 15, 2015) . "\n";
echo mktime(0, 0, 0, 10, 22, 2015) . "\n";
//可以對此進行格式化
echo "time()顯示年月日時分秒:" . date("Y-m-d H:i:s", time()) . "\n";
//這樣連時,分秒一起顯示
echo "time()只顯示年月日:" . date("Y-m-d ", time()) . "\n"; //只年示年月日
echo "時間戳格式化:" . date("Y-m-d H:i:s", 1444898410) . "\n"; //直接使用時間戳
//把正常日期轉成時間戳了,這裡如果有時分秒也是同理,
$year=((int)substr("2015-10-15",0,4));//取得年份
$month=((int)substr("2015-10-15",5,2));//取得月份
$day=((int)substr("2015-10-15",8,2));//取得幾號
echo mktime(0,0,0,$month,$day,$year);
?>