编辑这个页面须要登录或更高权限!

PHP date_format() 函数用法及示例

PHP Date & Time 函数手册

date_format()函数返回根据给定格式的格式化的日期

定义和用法

该函数是DateTime :: format()函数的别名。它接受DateTime对象和格式字符串(表示所需的日期/时间格式)作为参数,以指定的格式设置对象的格式,然后返回结果。

语法

date_format($date_time_object, $format)

参数

序号参数及说明
1

date_time_object(必需)

这是需要格式化的DateTime对象。

2

format(必需)

这是表示所需格式的字符串。

返回值

PHP date_format()函数返回格式化的日期字符串

PHP版本

此函数最初是在PHP版本5.2.1中引入的,并且在所有更高版本中均可用。

在线示例

在这里尝试以下示例,我们正在创建DateTime对象并对其进行格式化-

<?php
   //创建一个DateTime对象
   $date_time_Obj = date_create("25-09-1989");
   //格式化日期/时间对象
   $format = date_format($date_time_Obj, "y-d-m");
   print("yy-dd-mm 格式: ".$format); 
?>
测试看看‹/›

输出结果

yy-dd-mm 格式: 89-25-09

在线示例

以下示例将DateTime对象的格式分别设置为日期和时间-

<?php
   $dateString = '11-06-2012 12:50:41 GMT';
   $dateTimeObj = date_create($dateString);
   $date = date_format($dateTimeObj, 'd-m-y');
   print("Date: ".$date); 
   print("\n");
   $time = date_format($dateTimeObj, 'H:i:s');
   print("Time: ".$time); 
?>
测试看看‹/›

输出结果

Date: 11-06-12
Time: 12:50:41

在线示例

以下示例演示了PHP中的几个有效格式字符串-

<?php
   $dateTimeObj = date_create("11-06-2019 12:50:41 GMT");
   print("y-m-d 格式的日期: ".date_format($dateTimeObj, 'Y-m-d'));
   print("\n");
   print("d/m/y 格式的日期: ".date_format($dateTimeObj, 'd/m/y'));
   print("\n");
   print("Y-m-d H:i:s 格式的日期: ".date_format($dateTimeObj, 'Y-m-d H:i:s'));
   print("\n");
   print("G:i:A 格式的日期: ".date_format($dateTimeObj, 'G-i-A'));
?>
测试看看‹/›

输出结果

y-m-d 格式的日期: 2019-06-11
d/m/y 格式的日期: 11/06/19
Y-m-d H:i:s 格式的日期: 2019-06-11 12:50:41
G:i:A 格式的日期: 12-50-PM

在线示例

以下示例使用date_format()方法创建一个新日期-

<?php
   $dateSrc = '2015-04-19 12:50 GMT';
   $dateTime = date_create( $dateSrc);;
   # 现在使用date_format()设置一个新日期;
   date_format($dateTime, "2000-12-12");
   
   echo "新格式化日期为 ". $dateTime->format("Y-m-d\TH:i:s\Z");
   echo "<br>";

   # 使用第二个函数。
   $dateTime = new DateTime($dateSrc);
   $dateTime->setDate( 1999, 10, 12);
   
   echo "新格式化日期为 ". $dateTime->format("Y-m-d\TH:i:s\Z");
?>
测试看看‹/›

这产生以下输出-

新格式化日期为 2005-04-19T12:50:00Z
新格式化日期为 1999-10-12T12:50:00Z

格式字符串

有一些字符具有预定义的含义,你可以使用它们来创建格式字符串,它们是:

  • 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"

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

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

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

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

  • U - Unix纪元以来的总秒数(格林尼治标准时间1970年1月1日00:00:00)

  • e  - 时区标识符(例如:UTC,大西洋/亚速尔群岛)

  • I  - (大写i)-日期是否为夏令时(如果为夏令时则为1,否则为0)

  • O - 与格林威治时间(GMT)的小时数差异(例如:+0100)

  • T - PHP机器的时区设置(例如:EST,MDT)

  • Z - 时区偏移量(以秒为单位)。UTC以西的偏移量为负,UTC以东的偏移量为正(-43200至43200)

  • c - ISO-8601日期(例如2004-02-12T15:19:21 + 00:00)

  • r - RFC 2822格式的日期(例如,Thu,2000年12月21日16:01:07 +0200)

PHP Date & Time 函数手册