PHP时间函数的使用
PHP中有很多时间函数,这些函数可以帮助我们在程序中获取、转换、格式化时间,也可以进行时间运算等。下面就来介绍一下PHP时间函数的使用。
1.获取当前时间
使用PHP的date()函数,可以获取当前时间。date()函数有两个参数, 个参数是时间格式,第二个参数是时间戳(可选),如果不设置第二个参数,则默认获取当前时间的时间戳。
例如,要获取当前的年月日,可以这样写:
echo date("Y-m-d"); //输出如:2019-10-28
要获取当前的年月日时分秒,可以这样写:
echo date("Y-m-d H:i:s"); //输出如:2019-10-28 11:11:11
我们也可以把当前时间的时间戳作为第二个参数传入date()函数中,获取某个时间的格式化。
例如,获取2019年10月1日的时间戳,并将其转换为格式化的时间:
$time = strtotime("2019-10-01"); //获取时间戳
echo date("Y-m-d H:i:s", $time); //输出如:2019-10-01 00:00:00
2.转换时间格式
PHP中有两个非常重要的函数可以进行时间格式的转换,分别是strtotime()和date()函数。
strtotime()函数可以把时间字符串转换为时间戳,例如,把2019年10月1日的时间字符串转换为时间戳:
$time = strtotime("2019-10-01"); //获取时间戳
echo $time; //输出如:1569859200
date()函数可以把时间戳转换为格式化的时间字符串,例如,把时间戳转换为常用的“年-月-日”格式:
$time = 1569859200; //时间戳
echo date("Y-m-d", $time); //输出如:2019-10-01
3.时间运算
PHP中可以对时间进行加、减、比较等运算。
加法运算可以使用strtotime()函数,例如,获取某天往后N天的日期:
$now = date("Y-m-d"); //当前日期
$days = 7; //往后7天
$new_date = date("Y-m-d", strtotime("$now +$days day")); //格式化新日期
echo $new_date; //输出如:2019-11-04
同理,减法运算也可以使用strtotime()函数,例如,获取某天往前N天的日期:
$now = date("Y-m-d"); //当前日期
$days = 7; //往后7天
$new_date = date("Y-m-d", strtotime("$now -$days day")); //格式化新日期
echo $new_date; //输出如:2019-10-21
比较运算可以使用strtotime()函数来获取两个时间的时间戳,然后比较大小。
例如,比较当前时间和某个时间的大小:
$now = time(); //当前时间戳
$compare = strtotime("2020-01-01 00:00:00"); //某个时间的时间戳
if ($now > $compare) {
echo "现在时间晚于2020年1月1日"; //输出如:现在时间晚于2020年1月1日
} else {
echo "现在时间早于2020年1月1日";
}
4.转换时区
PHP中,我们可以通过修改默认时区,来改变时间的显示,使之符合不同时区的需求。
默认时区可以通过在PHP文件的开头,使用date_default_timezone_set()函数来设置,例如:
date_default_timezone_set("Asia/Shanghai"); //设置时区为上海
然后,我们就可以使用date()函数来格式化时间了。
以上就是PHP时间函数的使用,掌握这些函数在实际应用中能够让我们更方便地处理时间相关问题。
