php关于日期时间的操作-php教程

资源魔 27 0
日期工夫正在顺序言语中通罕用于显示和前提限度。更为详细一点来讲多是心愿以某种格局显示工夫,显示某个时区的工夫,猎取一个礼拜之后的工夫,猎取本礼拜开端的工夫戳,将某种格局的工夫转换成另外一种等等。

1. 显示以后工夫

应用date函数,格局为date(format[, timestamp]),它承受两个参数,第一个参数为工夫格局字符串,第二个参数为工夫戳,工夫戳可选,假如没有填的话则是以后工夫的工夫戳。

echo date('Y-m-d H:i:s');  // 2018-12-25 09:31:22

像这样就能够打出以后的年代日时候秒来了,当然依据格局字符串的没有同还能够打出其余格局的工夫:

echo date('l dS \of F Y h:i:s A');  // Tuesday 25th of December2018 09:34:54 AM

诠释一下下面所用到的格局字符:

Y 完好年份,4位数字

m 有前导0的月份

d 月中的第几天,有前导0

H 24小时制的小时,有前导0

i 分钟,有前导0

s 秒,有前导0

l 礼拜几的完好英文(留意是小写的L,没有是年夜写的i)

S 每个月天数的后缀(多是st, nd, rd, th)

F 月份的完好英文

h 12小时制的小时,有前导0

A 上午或下战书(AM或PM)

这只是罗列了此中的一局部,更为完好的格局字符能够去查阅民间手册。

2. 显示某个时区的世界

比方经过设置时区,咱们能够取得美国的工夫:

date_default_timezone_set("America/New_York");
echo date('Y-m-d H:i:s');  // 2018-12-24 20:54:36

下面就是美国纽约的世界,时区要求的字符串能够查阅php文档,假如没有非法将会孕育发生一条正告,同不时区也没有会设置胜利,而是应用默许的时区。

3. 较量争论的工夫

比方本周开端的工夫,本月开端的工夫,一个礼拜之后的工夫等,能够应用strtotime函数来帮咱们实现这一点。

strtotime(time[, now = time()]) 能够将任何形容工夫日期的字符串转换成unix工夫戳,第一个参数是形容字符串,第二个参数是用来较量争论的工夫戳(默许为以后工夫戳)。看形容就晓得是一个很灵敏的函数,但要留意它究竟结果这是一个函数,没有会智能到“任何”形容工夫的字符串它都能了解,仍是需求特定格局的——特地是我们中国地域,就没有要指望它能了解“2018年12月25日”是甚么意义了。然而它依然很弱小,后面形容的性能均可以做到。

echo '下个礼拜的工夫:' . date('Y-m-d H:i:s', strtotime('+1 week'));  // 下个礼拜的工夫:2019-01-01 10:12:16
echo '本周开端工夫:' . date('Y-m-d H:i:s', strtotime('this week Monday'));  // 本周开端工夫:2018-12-24 00:00:00
echo '今天开端工夫:' . date('Y-m-d 00:00:00', strtotime('+1 day'));  // 今天开端工夫:2018-12-26 00:00:00
echo '1天2小时3分5秒之后的工夫:' . date('Y-m-d H:i:s', strtotime('+1 day 2 hours 3 minutes 5 seconds'));  // 1天2小时3分5秒之后的工夫:2018-12-26 12:24:15

4. 依据详细值创立工夫

假如你晓得某个工夫的年、月、日、时、分、秒,想用他们来创立一个工夫,能够抉择用他们拼接成一个工夫字符串而后用strtotime来解析,或许正在这类状况下也能够应用更为稳当的办法:mktime。

mktime(hour, minute, second, month, day, year) 需求留意的是参数的程序以及咱们的习气没有太相反,为:时 分 秒 月 日 年

$time = mktime(3, 10, 15, 2, 15, 2014);
echo date('Y-m-d H:i:s', $time);  // 2014-02-15 03:10:15

5. 工具类型的工夫操作

php也支持工具类型的工夫操作

$date_obj = date_create();  // 创立一个DateTime工具
echo $date_obj->format('Y-m-d H:i:s');  // 2018-12-25 10:45:08
 
date_add($date_obj, date_interval_create_from_date_string("3 days"));  // 给工具添加3天
echo $date_obj->format('Y-m-d H:i:s');  // 2018-12-28 10:45:08
 
date_sub($date_obj, date_interval_create_from_date_string("2 days"));  // 给工具缩小2天
echo $date_obj->format('Y-m-d H:i:s');  // 2018-12-26 10:45:08
 
echo '时区为:' . timezone_name_get(date_timezone_get($date_obj));  // 时区为:PRC (中国时区,猎取时区并打印)

与进程化的格调没有同,不外能够完成的性能其实仍是比拟相似的。

更多PHP相干常识,请拜访PHP中文网!

以上就是php对于日期工夫的操作的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 时间戳 日期

抱歉,评论功能暂时关闭!