php date时间戳日期格式化函数详解

php 2023-05-15 601次浏览

前言

前几篇讲了几篇时间格式化友好展示和星期获取的方式,基本都是围绕date()函数进行解析和处理,今天这篇文章主要介绍一下date()函数的使用和传参详细说明

函数说明

date(string $format, int $timestamp = null): string

格式化 Unix 时间戳,使用指定格式的unix时间戳,返回指定格式的格式化字符串
$timestamp不传的话使用当前时间戳,默认:time()

$format 格式化选项

format 参数字符串可以识别以下字符

format 字符 说明 返回值示例
d 月份中的第几天,有补零的两位数字 01 到 31
D 文字表示星期几,三个字母 Mon 到 Sun
j 月份中的第几天,没有补零 1 到 31
l(小写 'L') 完整文本表示星期几 Sunday 到 Saturday
N ISO 8601 数字表示星期几 1(星期一)到 7(星期天)
S 月份中的第几天英文后缀,两个字符 st、nd、rd 或
th。可以和 j 一起使用
w 数字表示星期几 0(星期天)到 6(星期六)
z 一年中的第几天(从 0 开始) 0 到 365
W ISO 8601 格式当年中的第几周,每周从周一开始 示例:42(当年的第 42 周)
F 月份的完整文本表示,比如 January 或者 March January 到 December
m 月份的数字表示,补零 01 到 12
M 简短文本表示月份,三个字母 Jan 到 Dec
n 数字表示几月份,不补零 1 到 12
t 指定月份的天数 28 到 31
L 是否是闰年 如果是闰年为 1,否则为 0。
o ISO 8601 数字年份表示。这和 Y 值相同,但如果 ISO
周数(W)属于上一年或者下一年,则用那一年。
示例:1999 或 2003
X 年份的展开全数字表示,至少四位,-
表示公元前,+ 表示公元。
示例:-0055、+0787、
+1999、+10191
x 如果需要,年份可以展开全数字表示,如果可能的话,也可以用标准的全数字(Y)表示。至少有四位数字。公元前以
- 为前缀,年份不小于 10000
时以 + 为前缀。
示例:-0055, 0787,
1999, +10191
Y 年份完整数字表示,至少四位,使用 - 表示公元前。 示例:-0055、0787、
1999、2003、10191
y 两位数的年份表示 示例:99 或 03
时间
a 小写的上午和下午 am 或 pm
A 大写的上午和下午 AM 或 PM
B Swatch 互联网时间 000 到 999
g 不补零的小时(12 小时制) 1 到 12
G 不补零的小时(24 小时制) 0 到 23
h 补零的小时(12 小时制) 01 到 12
H 补零的小时(24 小时制) 00 到 23
i 补零的分钟 00 到 59
s 补零的秒 00 到 59
u 微秒。注意 date()总是生成 000000,因为它需要一个int 参数,而如果 DateTime 是使用微秒创建的,则DateTime::format() 支持微秒。 示例:654321
v 毫秒。与 u 的说明相同。 示例:654
时区
e 时区标识符 示例:UTC、GMT、Atlantic/Azores
I(大写 i) 是否为夏令时 如果是夏令时为 1,否则为 0。
O 跟格林尼治时间(GMT)的差异,小时和分钟时间没有冒号 示例:+0200
P 跟格林尼治时间(GMT)的差异,小时和分钟时间有冒号 示例:+02:00
p 跟 P 相同,区别是使用 Z
替换 +00:00 返回(PHP 8.0.0 起可用)
示例:Z 或 +02:00
T 如果知道会返回时区缩写,否则返回 GMT 时差。 示例:EST、MDT、+05
Z 以秒为单位的时差。UTC 以西的时区为负的时差,以东为正的时差。 -43200 到 50400
完整日期/时间
c ISO 8601 日期 2004-02-12T15:19:21+00:00
r » RFC 2822/» RFC 5322 格式化时间 示例:Thu, 21 Dec 2000 16:01:07 +0200
U 从 Unix 纪元(January 1 1970 00:00:00 GMT)到至今的秒数 参见 time()

php date时间戳日期格式化函数详解

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址