DateTime::createFromFormat

date_create_from_format

(PHP 5 >= 5.3.0, PHP 7)

DateTime::createFromFormat -- date_create_from_format锟斤拷锟捷革拷锟斤拷锟侥革拷式锟斤拷锟斤拷锟斤拷锟斤拷时锟斤拷锟街凤拷锟斤拷

说锟斤拷

锟斤拷锟斤拷锟斤拷锟斤拷锟�

public static DateTime::createFromFormat ( string $format , string $time [, DateTimeZone $timezone ] ) : DateTime

锟斤拷锟教伙拷锟斤拷锟�

date_create_from_format ( string $format , string $time [, DateTimeZone $timezone ] ) : DateTime

锟斤拷 time 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷时锟斤拷锟街凤拷锟斤拷锟斤拷 锟斤拷锟斤拷 format 锟斤拷锟斤拷锟斤拷锟斤拷锟侥革拷式 锟斤拷锟斤拷为一锟斤拷锟铰碉拷 DateTime 锟斤拷锟斤拷

锟斤拷锟斤拷

format

锟节斤拷锟斤拷锟斤拷锟斤拷时锟斤拷锟街凤拷锟斤拷锟斤拷时锟斤拷使锟矫的革拷式 string锟斤拷 锟轿硷拷锟斤拷锟叫的革拷式锟藉单锟斤拷 锟襟部分革拷式锟斤拷 date() 锟斤拷锟斤拷锟叫的革拷式锟斤拷一锟铰的★拷

format 锟斤拷锟斤拷锟斤拷支锟街碉拷锟街凤拷
format 锟叫碉拷锟街凤拷 锟斤拷锟斤拷 示锟斤拷
锟斤拷 --- ---
d 锟斤拷 j 一锟斤拷锟斤拷锟叫的第硷拷锟届,2 位锟斤拷锟街憋拷示锟斤拷锟斤拷前锟斤拷 0 锟斤拷锟斤拷锟斤拷前锟斤拷 0 01 锟斤拷 31 锟斤拷锟斤拷 1 锟斤拷 31
D 锟斤拷 l 锟斤拷锟节硷拷锟斤拷锟斤拷锟街憋拷示 Mon 锟斤拷 Sun 锟斤拷锟斤拷 Sunday 锟斤拷 Saturday
S 2 锟斤拷锟斤拷母锟斤拷示锟斤拷一锟斤拷锟斤拷锟叫的第硷拷锟届(锟斤拷锟斤拷锟绞o拷锟斤拷 锟节斤拷锟叫斤拷锟斤拷锟斤拷时锟斤拷岜伙拷锟斤拷锟� st锟斤拷nd锟斤拷rd 锟斤拷锟斤拷 th锟斤拷
z 一锟斤拷锟叫的第硷拷锟届,锟斤拷 0 锟斤拷始 0 锟斤拷 365
锟斤拷 --- ---
F 锟斤拷 M 锟侥憋拷锟斤拷示锟斤拷锟铰份o拷锟斤拷锟斤拷 January 锟斤拷锟斤拷 Sept January 锟斤拷 December 锟斤拷锟斤拷 Jan 锟斤拷 Dec
m 锟斤拷 n 锟斤拷值锟斤拷示锟斤拷锟铰份o拷锟斤拷前锟斤拷 0 锟斤拷锟斤拷锟斤拷前锟斤拷 0 01 锟斤拷 12 or 1 锟斤拷 12
锟斤拷 --- ---
Y 4 位锟斤拷锟街憋拷示锟斤拷锟斤拷 锟斤拷锟界:1999 锟斤拷 2003
y 2 位锟斤拷锟街憋拷示锟斤拷锟疥, 锟斤拷锟矫的凤拷围锟斤拷 1970 锟斤拷 2069锟斤拷锟斤拷锟斤拷锟斤拷 锟斤拷锟界: 99 锟斤拷 03 锟斤拷锟斤拷示 1999 锟斤拷 2003锟斤拷
时锟斤拷 --- ---
a 锟斤拷 A 锟斤拷锟界、锟斤拷锟斤拷 am 锟斤拷 pm
g and h 12 小时锟狡碉拷小时锟斤拷锟斤拷前锟斤拷 0 锟斤拷锟斤拷锟斤拷前锟斤拷 0 1 锟斤拷 12 锟斤拷锟斤拷 01 锟斤拷 12
G 锟斤拷 H 24 小时锟狡碉拷小时锟斤拷锟斤拷前锟斤拷 0 锟斤拷锟斤拷锟斤拷前锟斤拷 0 0 锟斤拷 23 锟斤拷 00 锟斤拷 23
i 锟斤拷锟接o拷锟斤拷前锟斤拷 0 00 锟斤拷 59
s 锟诫,锟斤拷前锟斤拷 0 00 锟斤拷 59
u 微锟诫,锟斤拷嗟� 6 位锟斤拷锟斤拷 示锟斤拷锟斤拷45锟斤拷654321
时锟斤拷 --- ---
e锟斤拷O, P 锟斤拷 T 时锟斤拷锟斤拷锟狡o拷锟斤拷锟斤拷锟斤拷锟斤拷 UTC 时锟斤拷为锟斤拷准锟斤拷小时偏锟斤拷锟斤拷锟斤拷 锟斤拷锟斤拷锟斤拷锟斤拷 UTC 为锟斤拷准锟斤拷小时锟酵凤拷锟接碉拷偏锟斤拷锟斤拷锟斤拷 小时锟酵凤拷锟斤拷之锟斤拷锟斤拷冒锟脚o拷:锟斤拷锟街革拷锟斤拷 示锟斤拷锟斤拷UTC锟斤拷GMT锟斤拷 Atlantic/Azores 锟斤拷 +0200 锟斤拷 +02:00 锟斤拷 EST锟斤拷MDT
锟斤拷锟斤拷锟斤拷锟斤拷锟节猴拷时锟斤拷 --- ---
U 锟斤拷 Unix Epoch (January 1 1970 00:00:00 GMT) 锟斤拷始锟斤拷锟斤拷锟绞憋拷洌拷锟斤拷锟轿拷锟轿� 示锟斤拷锟斤拷1292177455
锟秸帮拷锟街凤拷锟酵分革拷锟街凤拷 --- ---
锟斤拷锟秸革拷 一锟斤拷锟秸革拷锟街凤拷锟斤拷锟斤拷一锟斤拷 tab 锟街凤拷 示锟斤拷锟斤拷
# 锟斤拷锟斤拷锟斤拷一锟铰分革拷锟斤拷锟斤拷锟叫碉拷锟斤拷锟斤拷一锟斤拷锟斤拷 ;锟斤拷 :锟斤拷/锟斤拷.锟斤拷 ,锟斤拷-锟斤拷( 锟斤拷 ) 示锟斤拷锟斤拷/
;锟斤拷 :锟斤拷/锟斤拷.锟斤拷 ,锟斤拷-锟斤拷( 锟斤拷 ) 锟斤拷锟斤拷锟街凤拷 示锟斤拷锟斤拷-
? 锟斤拷锟斤拷纸锟� 示锟斤拷锟斤拷^ 锟斤拷锟斤拷要注锟斤拷锟斤拷牵锟� 锟斤拷锟斤拷 UTF-8 锟街凤拷锟斤拷锟斤拷锟杰伙拷锟斤拷要锟斤拷锟� ?锟斤拷 锟斤拷锟斤拷锟斤拷锟斤拷拢锟斤拷锟绞癸拷锟� *锟斤拷
* 锟斤拷锟斤拷纸冢锟街憋拷锟斤拷锟斤拷锟斤拷锟揭伙拷锟斤拷锟叫э拷姆指锟斤拷锟斤拷呕锟斤拷锟斤拷锟街� 示锟斤拷锟斤拷使锟斤拷 Y-*-d 锟斤拷式锟斤拷锟斤拷锟斤拷锟斤拷 2009-aWord-08 锟街凤拷锟斤拷锟斤拷时锟斤拷 * 锟斤拷匹锟斤拷 aWord
! 锟斤拷锟斤拷锟叫碉拷锟街段o拷锟疥、锟铰★拷锟秸★拷时锟斤拷锟街★拷锟诫、微锟斤拷锟皆硷拷时锟斤拷锟斤拷锟斤拷锟矫碉拷 Unix Epoch 时锟戒。 锟斤拷锟斤拷锟绞癸拷锟� !, 锟斤拷式锟斤拷 锟斤拷么锟斤拷锟叫碉拷锟街段会被锟斤拷锟斤拷为系统锟斤拷前锟斤拷锟斤拷锟节猴拷时锟戒。
| 锟斤拷锟斤拷未锟斤拷锟斤拷锟斤拷锟斤拷锟街段o拷也锟斤拷锟斤拷式锟街凤拷锟斤拷锟斤拷未锟斤拷确指锟斤拷锟斤拷锟街讹拷 锟斤拷锟疥、锟铰★拷锟秸★拷时锟斤拷锟街★拷锟诫、微锟斤拷锟皆硷拷时锟斤拷锟斤拷 锟斤拷锟矫碉拷 Unix Epoch 时锟戒。 Y-m-d| 锟斤拷锟斤拷锟斤拷锟斤拷锟绞憋拷锟斤拷址锟斤拷锟斤拷械锟斤拷辍拷潞锟斤拷眨锟� 锟斤拷锟角讹拷锟斤拷时锟斤拷锟街★拷锟斤拷锟街段伙拷锟斤拷锟斤拷为 0.
+ 锟节革拷式锟街凤拷锟斤拷锟斤拷使锟斤拷锟斤拷锟斤拷锟绞斤拷锟绞撅拷址锟斤拷锟� 锟斤拷锟斤拷锟斤拷锟结供锟斤拷锟斤拷锟斤拷时锟斤拷锟街凤拷锟斤拷锟叫帮拷锟斤拷锟斤拷锟剿革拷式锟街凤拷之锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷莸幕锟斤拷锟斤拷锟斤拷岱拷锟揭伙拷锟斤拷锟斤拷螅锟斤拷欠锟斤拷锟揭伙拷锟斤拷锟斤拷妗� 使锟斤拷 DateTime::getLastErrors() 锟斤拷锟斤拷 锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟绞憋拷锟斤拷址锟斤拷锟斤拷锟斤拷欠锟斤拷锟斤拷锟斤拷式锟街凤拷锟斤拷指锟斤拷锟斤拷锟斤拷锟斤拷之锟斤拷锟斤拷锟斤拷荨锟�

锟斤拷锟斤拷诟锟绞斤拷址锟斤拷锟斤拷邪锟斤拷锟斤拷锟斤拷锟绞讹拷锟斤拷锟街凤拷锟斤拷 锟斤拷么锟结导锟铰斤拷锟斤拷失锟杰o拷锟斤拷锟斤拷锟节凤拷锟截的结构锟叫革拷锟斤拷一锟斤拷锟斤拷锟斤拷锟斤拷息锟斤拷 锟斤拷锟斤拷通锟斤拷 DateTime::getLastErrors() 锟斤拷探锟斤拷锟斤拷锟斤拷欠锟斤拷锟节达拷锟斤拷

锟斤拷锟斤拷锟揭拷诟锟绞斤拷址锟斤拷锟� format 锟斤拷锟斤拷锟斤拷使锟斤拷 锟斤拷锟斤拷锟斤拷示锟斤拷式锟斤拷锟街凤拷锟斤拷为一锟斤拷锟斤拷通锟街凤拷锟斤拷锟斤拷锟斤拷锟绞癸拷梅锟叫憋拷撸锟�\锟斤拷锟斤拷锟斤拷转锟藉。

锟斤拷锟斤拷锟绞斤拷址锟斤拷锟斤拷锟斤拷锟� format 锟叫诧拷锟斤拷锟斤拷 ! 锟街凤拷锟斤拷 锟斤拷么没锟斤拷锟斤拷 format 锟斤拷锟斤拷锟斤拷指锟斤拷锟斤拷锟街段o拷 锟节斤拷锟斤拷锟斤拷锟斤拷薪锟斤拷岜伙拷锟斤拷锟轿低筹拷锟角笆憋拷锟斤拷应锟斤拷锟街讹拷值锟斤拷

锟斤拷锟斤拷锟绞斤拷址锟斤拷锟斤拷锟斤拷锟� format 锟斤拷锟斤拷锟斤拷 ! 锟街凤拷锟斤拷 锟斤拷么没锟斤拷锟斤拷 format 锟斤拷锟斤拷锟斤拷指锟斤拷锟斤拷锟街段o拷 锟皆硷拷锟斤拷 ! 锟斤拷锟斤拷应锟斤拷锟街段o拷 锟节斤拷锟斤拷锟斤拷锟斤拷薪锟斤拷岜伙拷锟斤拷锟轿� Unix epoch 时锟斤拷锟接︼拷锟斤拷侄巍锟�

The Unix epoch 为 1970-01-01 00:00:00 UTC锟斤拷

time

锟斤拷锟斤拷锟斤拷示锟斤拷锟斤拷时锟斤拷锟斤拷址锟斤拷锟斤拷锟�

timezone

DateTimeZone 锟斤拷锟斤拷 锟斤拷示锟节斤拷锟斤拷锟斤拷锟斤拷时锟斤拷锟街凤拷锟斤拷锟斤拷时锟斤拷锟斤拷要使锟矫碉拷时锟斤拷锟斤拷

锟斤拷锟斤拷锟斤拷锟� timezone 锟斤拷锟斤拷锟斤拷 锟斤拷锟揭憋拷示锟斤拷锟斤拷时锟斤拷锟斤拷址锟斤拷锟� time 锟斤拷也锟斤拷锟斤拷锟斤拷时锟斤拷锟斤拷息锟斤拷 锟斤拷么锟斤拷锟斤拷使锟斤拷系统锟斤拷前时锟斤拷锟斤拷为锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷时锟斤拷锟斤拷

Note:

锟斤拷锟� time 锟斤拷锟斤拷 锟斤拷 UNIX 时锟斤拷锟斤拷锟绞斤拷锟斤拷锟斤拷纾�946684800锟斤拷锟斤拷 锟斤拷锟斤拷锟斤拷锟斤拷锟窖撅拷锟斤拷锟斤拷锟斤拷时锟斤拷锟斤拷息锟斤拷锟斤拷锟界:2010-01-28T15:00:00+02:00锟斤拷锟斤拷 锟斤拷么 timezone 锟皆硷拷系统锟斤拷前时锟斤拷 锟斤拷锟斤拷锟结被锟斤拷锟皆★拷

锟斤拷锟斤拷值

锟斤拷锟斤拷一锟斤拷 DateTime 锟斤拷锟斤拷 锟斤拷锟斤拷锟斤拷失锟斤拷时锟斤拷锟斤拷 FALSE锟斤拷

锟斤拷锟斤拷锟斤拷志

锟芥本 说锟斤拷
5.3.9 锟斤拷锟斤拷 format 锟斤拷式锟街凤拷锟斤拷锟叫讹拷锟斤拷 + 锟斤拷式锟街凤拷锟斤拷支锟街★拷

锟斤拷锟斤拷

Example #1 DateTime::createFromFormat() 锟斤拷锟斤拷

锟斤拷锟斤拷锟斤拷锟斤拷锟�

<?php
$date 
DateTime::createFromFormat('j-M-Y''15-Feb-2009');
echo 
$date->format('Y-m-d');
?>

锟斤拷锟教伙拷锟斤拷锟�

<?php
$date 
date_create_from_format('j-M-Y''15-Feb-2009');
echo 
date_format($date'Y-m-d');
?>

锟斤拷锟斤拷锟斤拷锟教伙拷锟斤拷锟斤拷锟�

2009-02-15

Example #2 DateTime::createFromFormat() 锟侥革拷锟斤拷锟矫凤拷

<?php
echo 'Current time: ' date('Y-m-d H:i:s') . "\n";

$format 'Y-m-d';
$date DateTime::createFromFormat($format'2009-02-15');
echo 
"Format: $format; " $date->format('Y-m-d H:i:s') . "\n";

$format 'Y-m-d H:i:s';
$date DateTime::createFromFormat($format'2009-02-15 15:16:17');
echo 
"Format: $format; " $date->format('Y-m-d H:i:s') . "\n";

$format 'Y-m-!d H:i:s';
$date DateTime::createFromFormat($format'2009-02-15 15:16:17');
echo 
"Format: $format; " $date->format('Y-m-d H:i:s') . "\n";

$format '!d';
$date DateTime::createFromFormat($format'15');
echo 
"Format: $format; " $date->format('Y-m-d H:i:s') . "\n";
?>

锟斤拷锟斤拷锟斤拷锟教碉拷锟斤拷锟斤拷锟斤拷锟斤拷冢锟�

Current time: 2010-04-23 10:29:35
Format: Y-m-d; 2009-02-15 10:29:35
Format: Y-m-d H:i:s; 2009-02-15 15:16:17
Format: Y-m-!d H:i:s; 1970-01-15 15:16:17
Format: !d; 1970-01-15 00:00:00

Example #3 锟斤拷式锟斤拷锟街凤拷锟斤拷锟叫帮拷锟斤拷锟斤拷锟斤拷要锟斤拷锟斤拷转锟斤拷锟斤拷址锟�

<?php
echo DateTime::createFromFormat('H\h i\m s\s','23h 15m 03s')->format('H:i:s');
?>

锟斤拷锟斤拷锟斤拷锟教碉拷锟斤拷锟斤拷锟斤拷锟斤拷冢锟�

23:15:03

锟轿硷拷

  • DateTime::__construct() - 锟斤拷锟斤拷一锟斤拷锟铰碉拷 DateTime 锟斤拷锟斤拷
  • DateTime::getLastErrors() - 锟斤拷取锟斤拷锟斤拷痛锟斤拷锟斤拷锟较�
  • checkdate() - 锟斤拷证一锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟�
  • strptime() - 锟斤拷锟斤拷锟斤拷 strftime 锟斤拷锟缴碉拷锟斤拷锟节o拷时锟斤拷