1、验证时间
checkdate(月,日,年)
参数:3个参数(月、日、年)
作用:(1)该函数用于验证时间,
(2)判断日期是否合法
返回值:true(1)、false(0)
<?php
if(checkdate(2,30,2017)){
echo '不合法';
}
else{
echo '合法';
}
?>
2、时间戳转化
(1)date(string format,[int timestramp])[最重要的函数]
参数:第一个参数为格式化时间和日期,第二个参数为时间戳(第二个参数可省略)
作用:该函数用于格式化本地时间和日期
返回值:字符串——根据预定义指定格式化时间和日期的字符串形式
注意——format参数的字符串
A:年月日
(1)年—Y:四位数的年份
y:两位数的年份
(2)月—M:月份缩写
m:阿拉伯数字月的缩写
(3)日—D:英文下日的缩写
d:阿拉伯数字日的缩写
(第一个参数的格式化可以放一些无关紧要的字符串,只要无关紧要字符串不在format的目录里,就不会被识别)
B:时分秒
(1)时—H(24小时制表示)
[由于默认时区:东八区,所以会比实际的时钟差8小时]
(2)分—i(正常)
(3)秒—s(正常)
<?php
echo date('现在的时间是:Y-m-d H:m:s');
?>
重点:年-月-日 时:分:秒
(2)getdate()
作用:时间戳转化
<?php
//第一步:定义数组
$a=getdate();
echo $a['mon'];
?>
相同点:都可以进行时间戳的转换
不同点:date()返回值数组Array类型,getdate()返回值为字符串string类型
3、取得时间(当前时间、特定时间)
(1)当前时间——
a、gettimeofday()
作用:该函数用于取得当前时间,
返回值:一个与当前时间有关的元素所组成的数组
数组下标——
“sec”:自Unix纪元的秒数(作用:取得当前的时间的时间戳)
“usec”:微秒数us
“minuteswest”:格林威治向西的分钟数
“dsttime”:夏令时修正的类型
<?php
//第一步:定义数组
$a=gettimeofday();
//sec——取得当期那时间的时间戳,即转换为人可以看懂的时间
//第二步:结合date函数,
echo date('Y-m-d H:i:s',$a['sec']);
(第二个参数放与不放都可以)
?>
若上述函数的gettimeofday()所有参数设置为0,即永远为false
b、mirtotime()
返回值:两个参数——时间戳+微秒数(两个)
页面运行时间:页面结束加载的时间-页面开始加载的时间
<?php
//list($a,$b)=explode('',microtime);
//怎么计算页面运行加载时间;
//页面结束获取时间-页面开始获取时间
function fn(){
list($a,$b)=explode('',microtime());
return $a+$b; //计算精准的时间;
}
//页面开始获取时间
$start_time=fn();
for($i=0;$i<1000;$i++){
}
//页面结束获取时间
$end_time=fn();
echo $end_time-$start_time;
?>
(2)时间戳
a、当前时间的时间戳——time()
作用:直接获取当前时间
<?php
//echo time(); 该函数用于调整时间
echo date('Y-m-d H:i:s',time());
//time()函数可以过去现在和未来;
echo date('Y-m-d H:i:s',time()+(-2000)); //表示过去的2000s,都以秒s进行加减计算
?>
b、特定时间的时间戳——mktime()
作用:取得特定时间的时间戳
参数:以时分秒,月日年来表示各参数值(6个)
<?php
$beijing=mktime(8,8,8,8,8,2008); //表示2008-08-08 08:08:08
echo date('Y-m-d H:i:s',$beijing);
?>
4、时间差的计算
strtotime()将人刻可读的日期转换为时间戳
<?php
echo strtotime('2007-10-31 14:20:20');
?>
计算两个时间的时间差
<?php
echo (strtotime('2007-10-31 14:20:20')-strtotime('2007-10-31 11:30:30'));
?>
5、获取当前文件的修改时间戳
getlastmod()
6、设置时区和GMT/UTC
(1)putenv():配置系统环境变量(PHP4)(不常用)
<?php
echo date('Y-m-d H-i-s');
echo '<br />';
//设置时区;
putenv('TZ=Asia/Shanghai');
echo date('Y--m-d H-i-s');
?>
(2)date_default_timezone_get()
date_default_timezone_set()
作用:获取当前时区
<?php
echo date('Y-m-d H-i-s');
echo '<br />';
//设置时区;
putenv('TZ=Asia/Shanghai');
echo date('Y--m-d H-i-s');
?>
(3)取得本地时间localtime()