date_format()函數(shù)返回根據(jù)給定格式的格式化的日期
該函數(shù)是DateTime :: format()函數(shù)的別名。它接受DateTime對象和格式字符串(表示所需的日期/時間格式)作為參數(shù),以指定的格式設(shè)置對象的格式,然后返回結(jié)果。
date_format($date_time_object, $format)
序號 | 參數(shù)及說明 |
---|---|
1 | date_time_object(必需) 這是需要格式化的DateTime對象。 |
2 | format(必需) 這是表示所需格式的字符串。 |
PHP date_format()函數(shù)返回格式化的日期字符串
此函數(shù)最初是在PHP版本5.2.1中引入的,并且在所有更高版本中均可用。
在這里嘗試以下示例,我們正在創(chuàng)建DateTime對象并對其進(jìn)行格式化-
<?php //創(chuàng)建一個DateTime對象 $date_time_Obj = date_create("25-09-1989"); //格式化日期/時間對象 $format = date_format($date_time_Obj, "y-d-m"); print("yy-dd-mm 格式: ".$format); ?>測試看看?/?
輸出結(jié)果
yy-dd-mm 格式: 89-25-09
以下示例將DateTime對象的格式分別設(shè)置為日期和時間-
<?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); ?>測試看看?/?
輸出結(jié)果
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')); ?>測試看看?/?
輸出結(jié)果
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()方法創(chuàng)建一個新日期-
<?php $dateSrc = '2015-04-19 12:50 GMT'; $dateTime = date_create( $dateSrc);; # 現(xiàn)在使用date_format()設(shè)置一個新日期; date_format($dateTime, "2000-12-12"); echo "新格式化日期為 ". $dateTime->format("Y-m-d\TH:i:s\Z"); echo "<br>"; # 使用第二個函數(shù)。 $dateTime = new DateTime($dateSrc); $dateTime->setDate( 1999, 10, 12); echo "新格式化日期為 ". $dateTime->format("Y-m-d\TH:i:s\Z"); ?>測試看看?/?
這產(chǎn)生以下輸出-
新格式化日期為 2005-04-19T12:50:00Z 新格式化日期為 1999-10-12T12:50:00Z
有一些字符具有預(yù)定義的含義,你可以使用它們來創(chuàng)建格式字符串,它們是:
a - "am" 或是 "pm"
A - "AM" 或是 "PM"
d - 幾日,二位數(shù)字,若不足二位則前面補(bǔ)零; 如: "01" 至 "31"
D - 星期幾,三個英文字母; 如: "Fri"
F - 月份,英文全名; 如: "January"
h - 12 小時制的小時; 如: "01" 至 "12"
H - 24 小時制的小時; 如: "00" 至 "23"
g - 12 小時制的小時,不足二位不補(bǔ)零; 如: "1" 至 "12"
G - 24 小時制的小時,不足二位不補(bǔ)零; 如: "0" 至 "23"
i - 分鐘; 如: "00" 至 "59"
j - 幾日,二位數(shù)字,若不足二位不補(bǔ)零; 如: "1" 至 "31"
l - 星期幾,英文全名; 如: "Friday"
m - 月份,二位數(shù)字,若不足二位則在前面補(bǔ)零; 如: "01" 至 "12"
n - 月份,二位數(shù)字,若不足二位則不補(bǔ)零; 如: "1" 至 "12"
M - 月份,三個英文字母; 如: "Jan"
s - 秒; 如: "00" 至 "59"
S - 字尾加英文序數(shù),二個英文字母; 如: "th","nd"
t - 指定月份的天數(shù); 如: "28" 至 "31"
w - 數(shù)字型的星期幾,如: "0" (星期日) 至 "6" (星期六)
Y - 年,四位數(shù)字; 如: "1999"
y - 年,二位數(shù)字; 如: "99"
z - 一年中的第幾天; 如: "0" 至 "365"
U - Unix紀(jì)元以來的總秒數(shù)(格林尼治標(biāo)準(zhǔn)時間1970年1月1日00:00:00)
e - 時區(qū)標(biāo)識符(例如:UTC,大西洋/亞速爾群島)
I - (大寫i)-日期是否為夏令時(如果為夏令時則為1,否則為0)
O - 與格林威治時間(GMT)的小時數(shù)差異(例如:+0100)
T - PHP機(jī)器的時區(qū)設(shè)置(例如:EST,MDT)
Z - 時區(qū)偏移量(以秒為單位)。UTC以西的偏移量為負(fù),UTC以東的偏移量為正(-43200至43200)
c - ISO-8601日期(例如2004-02-12T15:19:21 + 00:00)
r - RFC 2822格式的日期(例如,Thu,2000年12月21日16:01:07 +0200)