在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 天」)) 結果: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
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); }
猜你可能感兴趣:
本文对DateTime对象使用的方法进行了一些整理,方便大家查找和翻阅,有需要的可以参考学习。
PHP将DateTime对象转化为友好时间显示的实现代码。复制代码 代码如下: ......
以上是PHP取得當前的時間戳函數詳細講解的詳細內容。更多資訊請關注PHP中文網其他相關文章!