PHP 中的 strptime() 函数

phpprogrammingserver side programming更新于 2025/9/17 0:52:17

strptime() 函数用于解析由 strftime() 生成的时间/日期。此函数返回一个包含解析日期的数组,如果出错则返回 FALSE。数组中返回以下参数。

  • [tm_sec] 减去秒数 (0-61)

  • [tm_min] 减去分钟数 (0-59)

  • [tm_hour] 减去小时数 (0-23)

  • [tm_mday] 减去日期 (1-31)

  • [tm_mon] 减去自一月以来的月份数 (0-11)

  • [tm_year] 减去自 1900 年以来的年数

  • [tm_wday] − 自星期日以来的天数 (0-6)

  • [tm_yday] − 自 1 月 1 日以来的天数 (0-365)

  • [unparsed] − 使用指定格式无法识别的日期部分(如果有)

语法

strptime(date, format)

参数

  • date − 待解析的字符串

  • format − 日期中使用的格式,使用以下 − 进行格式化

    • %a − 缩写的星期名称

    • %A − 完整的星期名称

    • %b − 缩写的月份名称

    • %B − 完整的月份名称

    • %c − 首选的日期和时间表示形式

    • %C − 世纪数(年份除以 100,范围为 00 到 99)

    • %d −月份中的日期(01 至 31)

    • %D − 与 %m/%d/%y 相同

    • %e − 月份中的日期(1 至 31)

    • %g − 与 %G 类似,但不包含世纪

    • %G − 对应于 ISO 周数的 4 位数年份(参见 %V)。

    • %h − 与 %b 相同

    • %H − 小时,使用 24 小时制(00 至 23)

    • %I − 小时,使用 12 小时制(01 至 12)

    • %j −一年中的某一天(001 至 366)

    • %m − 月份(01 至 12)

    • %M − 分钟

    • %n − 换行符

    • %p − 根据给定的时间值,表示上午或下午

    • %r − 上午和下午的时间表示法

    • %R − 24 小时制时间

    • %S − 秒

    • %t − 制表符

    • %T − 当前时间,相当于 %H:%M:%S

    • %u − 以数字 (1 到 7) 表示星期几,星期一 = 1。警告:在 Sun Solaris 中,星期日 = 1

    • %U − 当前年份的周数,以第一个星期日作为第一周的第一天

    • %V − ISO 8601 当前年份的周数(01 至 53),其中第 1 周是当前年份中至少有 4 天的第一个周,以星期一为一周的第一天

    • %W − 当前年份的周数,以第一个星期一作为第一周的第一天

    • %w − 以十进制表示的星期几,星期日 = 0

    • %x − 不带时间的首选日期表示法

    • %X − 不带日期的首选时间表示法

    • %y − 不带世纪的年份(范围为 00 至 99)

    • %Y − 包含世纪的年份

    • %Z 或 %z −时区、名称或缩写

    • %% 减去一个字面量的 % 字符

返回

strptime() 函数返回一个数组,失败时返回 FALSE。

示例

下面是一个例子 −

<?php
   $format = '%d/%m/%Y %H:%M:%S';
   $strf = strftime($format);
   echo "$strf
";    print_r(strptime($strf, $format)); ?>

输出

以下是输出 −

11/10/2018 05:18:13
Array
(
   [tm_sec] => 13
   [tm_min] => 18
   [tm_hour] => 5
   [tm_mday] => 11
   [tm_mon] => 9
   [tm_year] => 118
   [tm_wday] => 4
   [tm_yday] => 283
   [unparsed] =>
)

相关文章