站內搜尋

Tuesday, June 22, 2010

[PHP] 用mktime()或strtotime()取時間

使用PHP的時間函數,要有UNIX時間戳記的概念,而mktime()跟strtotime()都是可以取得時間戳記的函式,假如php.ini時區設定為原設定的格林威治時間,我們來練習一下用年-月-日 時:分:秒的格式,取得台灣目前時間...



先用mktime()來取
<?php
echo date("Y-m-d H:i:s",mktime(date('H')+8, date('i'), date('s'), date('m'), date('d'), date('Y')));
?>

再來用strtotime()來取

<?php
echo date("Y-m-d H:i:s",strtotime("+8 hours"));
?>

上面兩種方式都可以正確取得我們要的時間,並符合規定格式。

註1:
mktime 的第二個參數是"指定日期"的 unix 時間,如果沒有設定的話,預設是 time() 也就是現在時間的 unix 時間。

註2:
mktime 也可以使用減法的方式去取得時間,例如:我要找 2013-12-01 的時間戳記,可以用 mktime(0,0,0,0,1,2014) 來取,這樣跟 mktime(0,0,0,12,1,2013) 取到的值是一樣的。

No comments:

Post a Comment