一、日期和时间函数
date
函数将服务器的时间格式化getdate
获得时间及日期信息time
获取目前时间的unix时间戳
1、date:获取日期和时间
通过date
函数可以获取按照指定格式输出的日期和时间信息,如果省略参数,会自动获取本地的当前时间
参数 | 说明 |
---|---|
Y | 四位数字完整表示年份 |
y | 两位数字表示年份 |
M | 三个字母表示月份 |
m | 数字表示月份 |
D | 星期中的第几天 |
H | 24小时格式 |
h | 12小时格式 |
I | 是否为夏令时 |
i | 分钟数 |
s | 秒杀 |
#date('显示格式',时间戳);
echo date("Y-m-d H:i:s");
2、getdate() 获取日期信息
print_r(getdate());
/*
Array
(
[seconds] => 46
[minutes] => 18
[hours] => 19
[mday] => 21
[wday] => 4
[mon] => 9
[year] => 2017
[yday] => 263
[weekday] => Thursday
[month] => September
[0] => 1505992726
)
*/
3、time() 生成时间戳
时间戳(timestamp)是从格林威治时间1970年1月1日零点(北京时间1970年01月01日08时00分00秒)开始起,到当前时间所经过的秒数。
4、日期转unix时间戳
可以使用mktime()函数找到特定日期的时间戳;
#$stamp = mktime(hour,minute,second,month,day,year);
$date = mktime(9, 12, 31, 6, 10, 2015);
echo "创建日期是 " . date("Y-m-d h:i:sa", $date);
如果不带参数调用mktime(),它会返回当前的时间戳
3、日期计算
两个相隔日期计算:(时间戳A-时间戳B)/60*60*24*365
二、修改时区
-
修改
php.ini
配置文件data.timezone = "Asia/Shanghai"; //date.timezone = PRC
- 使用函数
在程序PHP 5以上版本的程序代码中使用函数
date_default_timezone_set('Asia/Shanghai'); //或者 ini_set('date.timezone','Asia/Shanghai');
三、几个出现频率很高的面试题
用PHP打印出前一天的时间格式是(2016-5-10 22:21:21)
求两个日期的差数,例如2007-2-5 ~ 2007-3--6的日期差数