1. 设置时区 date_default_timezone_set()
和 putenv()
让时间安全地设置就,输入如下代码:
date_default_timezone_set('UTC');
//or
date_default_timezone_set('Asia/Shanghai');
如果不设置,php会提示安全警告。
在php.ini
文件的date.timezone =
修改为date.timezone=Asia/Shanghai
,或者使用函数putenv()
:
putenv('TZ=Asia/Shanghai');
2. date(str,timestamp)
echo date('Y',time()).'year'.'<br />';
echo date('y',time()).'year'.'<br />';
echo date('m',time()).'month'.'<br />';
echo date('d',time()).'date'.'<br />';
echo date('w',time()).'week'.'<br />';
echo date('H',time()).'hour'.'<br />';
echo date('h',time()).'hour'.'<br />';
echo date('i',time()).'minute'.'<br />';
echo date('s',time()).'second'.'<br />';
var $today = date('Y-m-d w H:i:s',time());
echo $today;
3. 验证日期 checkdate()
$flag = checkdate(2,29,2017);
if($flag) {
echo '合法';
} else {
echo '不合法';
}
4. 获取当前时间有关的一个数组 gettimeofday()
mixed gettimeofday ([ bool $return_float = false ] )
print_r(gettimeofday());
输出结果:
array(4) {
["sec"]=> int(1509807827)
["usec"]=> int(164387)
["minuteswest"]=> int(0)
["dsttime"]=> int(0)
}
5. getdate()
将时间戳转换成直观的数组
print_r(getdate(1184557366));
6. time()
获取当前的时间戳
echo date('Y-m-d H:i:s',time()+(7 * 24 * 60 * 60));
7. mktime()
生成给定日期时间的时间戳。
echo mktime(0,0,0,7,17,2010);
8. strtotime()
日期转换成Unix 时间戳
echo strtotime('2007-10-31 14:31:33');
9. getlastmod()
可以得到当前文件最后修改时间的时间戳。
echo date('Y-m-d H:i:s',getlastmod());
10. 取得本地时间localtime()
函数可以取得本地时间数据
date_default_timezone_set('Asia/Shanghai');
print_r(localtime());
print_r(localtime(time(), true));
11 . microtime()
函数,该函数返回当前 UNIX 时间戳和微秒数。
function fntime() {
list($msec, $sec) = explode(' ', microtime());
return $msec + $sec;
}
$start_time = fntime();
for ($i = 0; $i < 1000000; $i++) {
//
}
$end_time = fntime();
echo round($end_time - $start_time, 4);