1. 获取时间和日期

date()函数用来获取并格式化日期和时间,它带有两个参数,第一个是格式字符串,第二个可选参数是UNIX时间戳。如果没有指定时间戳,在默认的情况下,date()函数将返回当前的日期和时间,例如:

echo date('jS F Y');
支持的格式代码
代码 描述
a 上午或下午,小写字符表示,"am"或"pm"。
A 上午或下午,大写字符表示,"AM"或"PM"。
B Swatch Internet时间。
c ISO 8601日期,日期用YYYY-MM-DD表示,时间用HH:MM:SS表示。
d 月份中的日期,有前导0,如"05"。
D 星期,缩略字符表示,如"Mon"。
e 时区识别器。
F 年中的月份,全写,如"January"。
g 日期中的时间,12小时制,无前导0,从"1"到"12"。
G 日期中的时间,24小时制,无前导0,从"0"到"23"。
h 日期中的时间,12小时制,有前导0,从"01"到"12"。
H 日期中的时间,24小时制,有前导0,从"00"到"23"。
i 小时中的分钟,有前导0,从"00"到"59"。
I 夏令时制,以布尔值表示,若为夏令值,返回"1",否则返回"0"。
j 月份中的日期,无前导0,如"5"。
l 星期,全写,如"Sunday"。
L 闰年,以布尔值表示,如果日期所在年是闰年,返回"1",否则返回"0"。
m 年中的月份,有前导0,从"01"到"12"。
M 年中的月份,缩略字符表示,如"Jan"。
n 年中的月份,无前导0,从"1"到"12"。
o ISO 8601的年份数。
O 当前时区与格林威治时间之间小时时差。
r RFC822格式的日期,如"Wed, 1 Jul 2010 18:10:10 + 1600"。
s 分钟中的秒数,有前导0,从"00"到"59"。
S 日期后缀,以两个字符表示,如"st"、"nd"、"rd"。
t 月份的天数,从"28"到"31"。
T 服务器的时间区域设置,如"EST"。
U UNIX时间戳。
w 星期,数字表示,从"0"(星期日)到"6"(星期六)。
W 一年的星期数。
y 年份,两位数,如"12"。
Y 年份,四位数,如"2012"。
z 日期,数字表示,从"0"到"365"。
Z 与当前时区的时区差,单位为秒,从"-43200"到"43200"。

2. UNIX时间戳

大多数UNIX系统保存当前日期和时间的方法是:保存格林威治时间从1970年1月1日零点起到当前时刻的秒数,以32位整列表示,其中1970年1月1日零点也叫UNIX纪元。

虽然这是UNIX惯例,但是即使在Windows服务器中运行PHP,这个格式仍然被date()函数和许多的PHP其他函数使用。不同的是,对于Windows,时间戳必须是正数。

将日期和时间转变成UNIX时间戳,可以使用mktime()函数,原型如下:

int mktime([int hour[, int minute[, int second [, int month[, int year[, int is_dst]]]]]])

参数is_dst表示该日期所示的时间是否是夏令时,如果是,可以将其设置为1,如果不是,设置为0,如果不知道,则设置为-1(默认值)。如果对应参数为空,将默认为当前时间。因此如果获取当前的UNIX时间戳,通过如下方式:

$time = mktime();

3. 时间函数

getdate()函数能够确定当前时间,原型如下:

array getdate([int timestamp])

它以时间戳为可选参数,返回一个相关数组,表示日期和时间的各个部分。

相关数组中的关键字-值对
关键字
seconds 秒钟,数字
minutes 分钟,数字
hours 小时,数字
mday 月份中的日期,数字
wday 星期,数字
mon 月份,数字
year 年份,数字
yday 年份中的日期,数字
weekday 星期,全写
month 月份,全写
0 时间戳,数字

可以调用checkdate()函数来检验日期是否有效,原型如下:

int checkdate(int month, int day, int year)

使用strftime()函数,可以根据系统的locale来格式化一个时间戳,原型如下:

string strftime(string format[, int timestamp])

如果希望以更短的时间段来计量时间,必须使用microtime()函数,它将返回浮点数的时间戳,它与mktime()函数、time()函数或date()函数的返回值相同,但是还有小数部分,例如:

echo number_format(microtime(true), 10, '.', '');

[PHP] 日期与时间相关推荐

  1. 【转】C/C++中的日期和时间

    头文件 time.h 函数用途 函数名 得到处理器时间 clock 得到时间差 difftime 设置时间 mktime 得到时间 time 得到以ASCII码表示的时间 asctime 得到字符串表 ...

  2. mysql 日期_「5」学习MySQL日期与时间类型发现:要养成注重细节的习惯

    在前面的学习中我们提到过字段类型这个概念,本篇的主题就是来讲一种常用而相对复杂的类型:日期与时间. MySQL中表示日期与时间的数据类型有很多种,但主要的不外乎下面五种: 记住上面表中的"范 ...

  3. python正则取字符串日期_python 正则表达式获取字符串中所有的日期和时间

    提取日期前的处理 1.处理文本数据的日期格式统一化 text = "2015年8月31日,衢州元立金属制品有限公司仓储公司(以下简称元立仓储公司)成品仓库发生一起物体打击事故,造成直接经济损 ...

  4. linux7设置时间,CentOS 7 设置日期和时间

    现代操作系统分为以下两种类型的时钟: 实时时钟(Real-Time Clock,RTC),通常称为硬件时钟(一般是系统主板上的集成电路),它完全独立于操作系统的当前状态,即使在计算机关闭时也能运行. ...

  5. Sql Server函数全解(四)日期和时间函数

    阅读目录 1.获取系统当前日期的函数getDate(); 2.返回UTC日期的函数UTCDATE() 3.获取天数的函数DAY(d) 4.获取月份的函数MONTH(d) 5.获取年份的函数YEAR(d ...

  6. Python学习笔记.OS学习笔记 OS操作系统(operating system)(三) 日期和时间

    日期和时间: 好多库函数: datetime time calendar dateutil ...and so on 日期表示的二义性,很烦人! 1/6/2010 你不知道到底是2010年的1月6日, ...

  7. java中日期的数据类型是啥_用于存储日期和时间的最合适的SQL和Java数据类型

    使用以下格式处理日期和时间的最合适的MySQL和Java数据类型是什么:yyyy.MM.dd hh:mm:ss 在持久层(jdbc类型)中使用的相应Java类型是java.sql.Timestamp. ...

  8. 日期、时间库使用备注

    日期.时间库 c/c++ 标准库 clock():返回程序消耗处理器时间 示例: /* clock example: frequency of primes */ #include <stdio ...

  9. C++中的日期和时间

    1.C++中的时间和日期 C++标准库没有提供所谓的日期类型,C++继承了C语言用于日期和时间操作的结构和函数.为了使用日期和时间相关的函数和结构,需要在C++程序中引用"ctime&quo ...

  10. pandas使用max函数和min函数计算dataframe日期(时间)数据列中最大日期和最小日期对应的数据行(maximum and minimum date or time row)

    pandas使用max函数和min函数计算dataframe日期(时间)数据列中最大日期和最小日期对应的数据行(maximum and minimum date or time row in data ...

最新文章

  1. 战神背光键盘如何关系_显瘦又有肌肉 神舟战神Z7MKP5GZ评测
  2. 算法—递归实现 C(m,n)
  3. 前端学习(2467):在前端页面中引入百度地图
  4. java把对象转成图片格式转换器安卓版,java 万能图片格式转换
  5. linux用ping命令测试网速,linux下面使用命令测试网速
  6. abap 取日期最大_Pointer干货分享:SQL面试50题思路解答与分类整理(下)CASE与日期函数...
  7. AtCoder Regular Contest 082 (ARC082) E - ConvexScore 计算几何 计数
  8. python源码_Python爬虫入门之获取网页源码
  9. DataMining with Sql 2005
  10. Vue2版Cnode社区webapp
  11. matlab 正交park变换 功率守恒,克拉克(CLARKE)和帕克(PARK)变换.doc
  12. 单例模式中饿汉模式和懒汉模式的线程安全问题
  13. MPLAB X IDE 用Pickit3烧录 提示“找不到目标器件。你必须连接一个目标器件来使用PICkit 3”,解决办法!
  14. 农林资金 大数据审计案例_大数据审计应用案例
  15. Spectre V1理论与实践
  16. 关于ARM公司的cortex系列
  17. 七天引爆社交新零售(助你提高十倍业绩)——前言
  18. 舰r最新服务器,战舰少女R官方网站—战舰少女-与心爱的舰娘一起守护这片海域...
  19. 无限级分类之递归查找家谱树
  20. yolov5的TensorRT部署--warpaffine_cuda核函数

热门文章

  1. 微服务框架 Spark Framework
  2. 机器学习与R语言(原书第2版)》一1.4 实践中的机器学习
  3. 组策略参考文档1-共享打印机
  4. Redis之rehash操作
  5. 大型K8s沙龙来啦,火速报名——Kubernetes Cloud Native Meetup
  6. Spring Mvc 数据回显、异常处理、文件上传、json交互、ResTful、拦截器的使用(高级三)
  7. Netty的ChannelFuture和ChannelPromise
  8. python3 面向对象编程 下载_Python3(7) Python 面向对象编程
  9. laravel 安装后500错误
  10. java 排序算法面试题_面试题: java中常见的排序算法的实现及比较