文档章节

PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]

Edik
 Edik
发布于 2015/11/07 17:16
字数 1150
阅读 9
收藏 1
php

今天写下php中,如何通过各种方法 获取当前系统时间、时间戳,并备注各种格式的含义,可灵活变通。
1、获取当前时间方法date()
很简单,这就是获取时间的方法,格式为:date($format, $timestamp),format为格式、timestamp为时间戳--可填参数。
2、获取时间戳方法time()、strtotime()
这两个方法,都可以获取php中unix时间戳,time()为直接获取得到,strtotime($time, $now)为将时间格式转为时间戳,$time为必填。清楚了这个,想了解更多,请继续往下看。

3、 date($format)用法
比如:
echo date('Y-m-d') ,输出结果:2012-03-22
echo  date('Y-m-d H:i:s'),输出结果:2012-03-22 23:00:00
echo  date('Y-m-d', time()),输出结果:2012-03-22 23:00:00(结果同上,只是多了一个时间戳参数)(时间戳转换为日期格式的方法)
echo  date('Y').'年'.date('m').'月'.date('d').'日',输出结果:2012年3月22日
举例就这几个,只是格式的变通而已,下面是格式中各个字母的含义:

/**************格式中可使用字母的含义**************/
a - "am" 或是 "pm" 

A - "AM" 或是 "PM" 

d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31" 

D - 星期几,三个英文字母; 如: "Fri" 

F - 月份,英文全名; 如: "January" 

h - 12 小时制的小时; 如: "01" 至 "12" 

H - 24 小时制的小时; 如: "00" 至 "23" 

g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12" 

G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23" 

i - 分钟; 如: "00" 至 "59" 

j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31" 

l - 星期几,英文全名; 如: "Friday" 

m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12" 

n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12" 

M - 月份,三个英文字母; 如: "Jan" 

s - 秒; 如: "00" 至 "59" 

S - 字尾加英文序数,二个英文字母; 如: "th","nd" 

t - 指定月份的天数; 如: "28" 至 "31" 

U - 总秒数 

w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六) 

Y - 年,四位数字; 如: "1999" 

y - 年,二位数字; 如: "99" 

z - 一年中的第几天; 如: "0" 至 "365" 

4、strtotime($time)用法
比如:
echo strtotime('2012-03-22'),输出结果:1332427715(此处结果为随便写的,仅作说明使用)
echo strtotime(date('Y-d-m')),输出结果:(结合date(),结果同上)(时间日期转换为时间戳)
strtotime()还有个很强大的用法,参数可加入对于数字的操作、年月日周英文字符,示例如下:
echo date('Y-m-d H:i:s',strtotime('+1 day')),输出结果:2012-03-23 23:30:33(会发现输出明天此时的时间)
echo date('Y-m-d H:i:s',strtotime('-1 day')),输出结果:2012-03-21 23:30:33(昨天此时的时间)
echo date('Y-m-d H:i:s',strtotime('+1 week')),输出结果:2012-03-29 23:30:33(下个星期此时的时间)
echo date('Y-m-d H:i:s',strtotime('next Thursday')),输出结果:2012-03-29 00:00:00(下个星期四此时的时间)
echo date('Y-m-d H:i:s',strtotime('last Thursday')),输出结果:2012-03-15 00:00:00(上个星期四此时的时间)
等等,自己去变通研究吧,strtotime()方法可以通过英文文本的控制Unix时间戳的显示,而得到需要的时间日期格式。


5、php获取当前时间的毫秒数
php本身没有提供返回毫秒数的函数,但提供了microtime()方法,它会返回一个Array,包含两个元素:一个是秒数、一个是小数表示的毫秒数,我们可以通过此方法获取返回毫秒数,方法如下:

function getMillisecond() {
list($s1, $s2) = explode(' ', microtime());		
return (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);	
}


6、获取当前时间相差6小时解决方法
有些朋友,获取的时间与当前系统时间相差6个小时,这是因为时区设置问题,只要将之设为上海时间即可。方法如下:
1.在php.ini中找到date.timezone,将它的值改成 Asia/Shanghai,即 date.timezone = Asia/Shanghai
2.在程序开始时添加 date_default_timezone_set('Asia/Shanghai')即可。


© 著作权归作者所有

Edik
粉丝 10
博文 28
码字总数 4820
作品 0
海淀
程序员
私信 提问
PHP获取当前时间、时间戳的各种格式写法汇总[日期时间]

今天写下php中,如何通过各种方法 获取当前系统时间、时间戳,并备注各种格式的含义,可灵活变通。 1、获取当前时间方法date() 很简单,这就是获取时间的方法,格式为:date($format, $time...

vancoud
2013/06/23
132
0
实例介绍PHP日期函数date格式转换

网站开发时我们经常需要对日期、时间进行处理,在PHP里提供了很多日期、时间函数方便PHP开发者对日期、时间进行计算、格式转换。所以掌握PHP日期函数非常必要,也为处理PHP日期函数与Mysql数...

Minho
2012/02/08
252
0
实例介绍PHP日期函数date格式转换

网站开发时我们经常需要对日期、时间进行处理,在PHP里提供了很多日期、时间函数方便PHP开发者对日期、时间进行计算、格式转换。所以掌握PHP日期函数非常必要,也为处理PHP日期函数与Mysql数...

Adam-Lee
2011/08/29
2.6K
1
db2日期和时间常用汇总

转摘自:http://www.cnblogs.com/wanghonghu/archive/2012/05/25/2518604.html 如有侵权请联系,谢谢! db2日期和时间常用汇总 1、db2可以通过SYSIBM.SYSDUMMY1、SYSIBM.DUAL获取寄存器中的值...

飞雪无痕
2016/11/10
14
0
JavaScript Date

Date 时间的表示方式 GMT 是指位于英国伦敦郊区的皇家格林尼治天文台当地的标准时间,因为本初子午线被定义为通过那里的经线。 自1924年2月5日开始,格林尼治天文台负责每隔一小时向全世界发...

evenyao
2018/07/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【在 Nervos CKB 上做开发】Nervos CKB 脚本编程简介[3]:自定义代币

原文作者:Xuejie 原文链接:https://xuejie.space/2019_09_06_introduction_to_ckb_script_programming_udt/ Nervos CKB 脚本编程简介[3]:自定义代币 CKB 的 Cell 模型和 VM 支持许多新的用...

NervosCommunity
45分钟前
4
0
通过OAuth2.0 获取授权访问SF 用户数据

通过OAuth2.0 获取授权访问SF 用户数据 OAuth2.0 相关知识 深入了解 Salesforce 中的 OAuth 2.0(SF官方) OAuth 2.0 的一个简单解释(阮一峰大神) OAuth 2.0 的四种方式(阮一峰大神) GitHub OA...

在山的那边
51分钟前
7
0
编写程序:从键盘上接受一个三位数(首先要确保是三位数),计算出各位之和输出。

#include<stdio.h> int main() { int a,sum=0; printf("请输入一个三位数:\n"); scanf("%d",&a); sum=a/100+a%100/10+a%10; printf("这三个数的和:%d",sum); return 0; }......

201905021729吴建森
今天
7
0
如何离开/退出/停用Python virtualenv

我正在使用virtualenv和virtualenvwrapper。 我可以使用workon命令在virtualenv之间切换。 me@mymachine:~$ workon env1(env1)me@mymachine:~$ workon env2(env2)me@mymachine:~$ workon e......

技术盛宴
今天
7
0
成长之路 万事坚持难

任何事情开了头,想要更好的发展下去,不忘初心,就一定要坚持下去。 以前自己坚持了一些事情,比如早睡不吃东西,由于中途断了,没有及时止损,导致又接着恶习断了几天。所以 及时的反省和调...

T型人才追梦者
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部