PHP獲取當(dāng)前系統(tǒng)時(shí)間方法總結(jié)
一、獲取當(dāng)前時(shí)間戳
方法1:通過(guò)time函數(shù)
time();
方法2:通過(guò)$_SERVER中的REQUEST_TIME元素
$_SERVER['REQUEST_TIME'];
方法3:通過(guò)strtotime函數(shù)
strtotime('now'));
二、獲取當(dāng)前時(shí)間
通過(guò)date函數(shù)格式化時(shí)間戳
echo date('Y-m-d h:i:s', time()); // 2018-10-3 15:57:05
三、時(shí)區(qū)問(wèn)題
上述方法都存在時(shí)區(qū)問(wèn)題,具體解決:
方法一:php.ini中修改為中國(guó)時(shí)區(qū)
date.timezone = PRC
方法二:在php文件中臨時(shí)設(shè)置為中國(guó)時(shí)區(qū)
date_default_timezone_set('PRC');
php獲取當(dāng)前時(shí)間、時(shí)間戳
首先需要知道的是在php中獲取時(shí)間方法是date(),在php中獲取時(shí)間戳方法有time()、strtotime()。下面分別說(shuō)明。
date()
格式為:date($format, $timestamp)
,format為格式、timestamp為時(shí)間戳(可選)。
time()
返回當(dāng)前時(shí)間的 Unix 時(shí)間戳,沒(méi)有參數(shù)。
strtotime($time, $now)
將任何英文文本的日期時(shí)間描述解析為 Unix 時(shí)間戳。$time 為必填,規(guī)定要解析的時(shí)間字符串;$now 用來(lái)計(jì)
算返回值的時(shí)間戳,如果省略該參數(shù),則使用當(dāng)前時(shí)間。
php獲取當(dāng)前時(shí)間的毫秒數(shù)
php本身沒(méi)有提供返回毫秒數(shù)的函數(shù),但提供了microtime()方法,它會(huì)返回一個(gè)數(shù)組,包含兩個(gè)元素:一個(gè)是秒數(shù)、一個(gè)是小數(shù)表示的
毫秒數(shù),我們可以通過(guò)此方法獲取返回的毫秒數(shù),方法如下:
function getMillisecond(){ list($s1,$s2)=explode(' ',microtime()); return (float)sprintf('%.0f',(floatval($s1)+floatval($s2))*1000);
推薦教程:PHP視頻教程