1、带T的时间
以前不知道,一直用这样的方法生成时间:
$nowTime = date(DATE_ATOM,time());
这样生成的时间会在日期和时间中间添加一个“T”,如果我们进行一些api请求需要上传时间,带T的时间通常是不合法的。
2、最简单的生成时间的方法
$nowTime = date("Y-m-d H:i:s");//生成的即是此刻的时间
3、时间先后的判断
直接用大于号小于号判断两个时间就可以了,大于的意思就是数字更大
if ($expiryTime>$nowTime){}//意思是如果时间还没有过期,即执行...
4、时间的偏移
我们要取的可能不是我们当前的时间,而是进行一个偏移,比如,一天后的此刻的时间,比如几分钟之前的时间。
例如:
$nowTime = date("Y-m-d H:i:s",strtotime("-3 minute"));
这个时间取的是3分钟前的时间,比如此刻为2017-04-20 18:34:25,那么这个方法取出来的时间为2017-04-20 18:31:25。这个方法非常的方便。
类似的写法很多,就是用英文直接告诉他要怎么转化,这就是php的强大之处。
例如:
<?php
echo strtotime("now"), "\n";
echo strtotime("10 September 2000"), "\n";
echo strtotime("+1 day"), "\n";
echo strtotime("+1 week"), "\n";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
echo strtotime("next Thursday"), "\n";
echo strtotime("last Monday"), "\n";
?>
5、时间戳和时间的转化
$timeNow = time(); //自从xxxx以来的秒数
$time1 = xxx; //(秒数)
$timeNew = $timeNow+$time1;//一个偏移后的新秒数
date("Y-m-d H:i:s"); //当前时间
date("Y-m-d H:i:s",$timeNew);//偏移后的时间
6、记忆原则:
strtotime:返回时间戳秒数
date:返回字符串格式的时间(一般用"Y-m-d H:i:s")
他们时间的转化是:
strtotime(传入一个字符串时间比如2017-10-20 21:46:33) 返回一个对应的时间戳秒数
date("Y-m-d H:i:s",第二个参数传入一个时间戳秒数) 返回对应的一个字符串日期