PHP Date函数详解
在Web开发中我们经常需要处理日期和时间,例如记录用户注册时间、记录文章发布时间等。PHP有很多处理日期和时间的函数,最常用的是这是日期函数。
1。基本使用
$date = date('Y-m-d H:i:s');
echo $date;
上面代码的输出是当前日期和时间,格式为年-月-日时:分:秒。调用日期函数时,第一个参数是日期格式,第二个参数是可选的时间戳。
其中,日期格式可以是以下格式的组合:
- Y: 四位数的年份(如:2019)
- y: 两位数的年份(如:19)
- m: 月份,带前导零(01 - 12)
- n: 月份,不带前导零(1 - 12)
- d: 月份中的第几天,带前导零(01 - 31)
- j: 月份中的第几天,不带前导零(1 - 31)
- H: 小时,24 小时格式,带前导零(00 - 23)
- h: 小时,12 小时格式,带前导零(01 - 12)
- i: 分钟,带前导零(00 - 59)
- s: 秒数,带前导零(00 - 59)
- A: 大写的上午或下午(AM 或 PM)
- a: 小写的上午或下午(am 或 pm)
您可以根据需要自由组合这些格式。
2。时间戳
很多需要记录时间的操作都需要用到时间戳,即从1970年1月1日00:00:00到今天的秒数。 PHP的time函数可以获取当前时间的时间戳:
$timestamp = time();
echo $timestamp;
要根据时间戳获取对应的日期和时间,只需将时间戳作为日期函数中的第二个参数传递即可,例如:
$timestamp = 1500000000;
$date = date('Y-m-d H:i:s', $timestamp);
echo $date;
上述代码的输出结果为2017-07-14 04:26:40,因为1500000000表示从1970年1月1日到2017年7月14日04:26:40秒。
3。时区
时间是一个全球性问题。在不同的时区,同一时刻的时间是不同的。 PHP提供了一些处理时区相关问题的函数,如下:
date_default_timezone_set('Asia/Shanghai');
$date = date('Y-m-d H:i:s');
echo $date;
上面的代码将时区设置为上海并检索当前时间。时区可以根据需要更改。例如,美国纽约时区可以设置为date_default_timezone_set('America/New_York')。
需要注意的是,时区设置要放在使用日期功能之前,否则会出现时差问题。
4。日期操作
有时您需要添加或减去日期。例如,要获取前一天的日期,可以使用 strtotime 函数,如下:
$date = date('Y-m-d', strtotime('-1 day'));
echo $date;
上面代码的输出结果是昨天的日期,即2019-05-12。
strtotime 函数可以接受多种不同格式的时间字符串,例如:
strtotime('now') // 当前时间
strtotime('10 September 2000') // 指定日期
strtotime('+1 day') // 明天
strtotime('+1 week') // 下周
strtotime('+1 month') // 下个月
strtotime('+1 year') // 明年
5。时间格式
在日期和时间格式中,有时必须使用特殊字符,例如正斜杠(“\”)和百分号(“%”)。这些字符必须用反斜杠(“\”“)替换才能转义。
此外,还可以使用strftime函数。其用法与日期函数类似,但可以根据地域文化格式化日期和时间。例如:
setlocale(LC_TIME, 'zh_CN.utf8');
echo strftime('%Y-%m-%d %H:%M:%S');
上面的代码将时间转换为中文格式。
总结
在 Web 开发中,处理日期和时间是一种非常常见的操作。 PHP中的日期函数提供了很多灵活的日期格式选项,你可以根据需要自由组合你需要的格式。此外,PHP还提供了很多相关的功能,比如获取时间戳、设置时区、日期加减等,满足开发者对日期和时间的需求。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网