date_parse_from_format()函数获取有关根据指定格式格式化的给定日期的信息。
date_parse_from_format()函数接受格式字符串和日期字符串作为参数,并以指定格式返回有关给定日期的信息。
date_parse($date)
序号 | 参数及说明 |
---|---|
1 | format(必需) 这是一个字符串值,表示您需要格式化日期信息的格式。 |
2 | date(必需) 这是一个字符串值,表示您需要有关其信息的日期。 |
date_create_from_format()函数返回以指定格式保存有关给定日期的信息的数组。
此函数最初是在PHP版本5.3.0中引入的,并且可以在所有更高版本中使用。
以下示例演示了date_parse_from_format()函数的用法-
<?php //创建一个DateTime对象 $date = "1989-08-25"; $format = "Y-m-d"; $res = date_parse_from_format($format, $date); print_r($res); ?>测试看看‹/›
输出结果
Array ( [year] => 1989 [month] => 8 [day] => 25 [hour] => [minute] => [second] => [fraction] => [warning_count] => 0 [warnings] => Array ( ) [error_count] => 0 [errors] => Array ( ) [is_localtime] => )
让我们看看解析日期的不同格式-
<?php $res1 = date_parse_from_format("j.n.Y", "25.8.2014"); print_r($res1); $res2 = date_parse_from_format("y-d-m", "2014-25-8"); print_r($res2); $res3 = date_parse_from_format("n/j/y", "8/25/2014"); print_r($res3); $res4 = date_parse_from_format("D.M.Y", "25.8.2014"); print_r($res4); $res5 = date_parse_from_format("H/i/s", "12/32/25"); print_r($res5); ?>测试看看‹/›
输出结果
Array ( [year] => 2014 [month] => 8 [day] => 25 [hour] => [minute] => [second] => [fraction] => [warning_count] => 0 [warnings] => Array ( ) [error_count] => 0 [errors] => Array ( ) [is_localtime] => ) Array ( [year] => 2020 [month] => 25 [day] => 14 [hour] => [minute] => [second] => [fraction] => [warning_count] => 1 [warnings] => Array ( [7] => The parsed date was invalid ) [error_count] => 2 [errors] => Array ( [2] => The separation symbol could not be found [7] => Trailing data ) [is_localtime] => ) Array ( [year] => 2020 [month] => 8 [day] => 25 [hour] => [minute] => [second] => [fraction] => [warning_count] => 0 [warnings] => Array ( ) [error_count] => 1 [errors] => Array ( [7] => Trailing data ) [is_localtime] => ) Array ( [year] => 8 [month] => [day] => [hour] => [minute] => [second] => [fraction] => [warning_count] => 0 [warnings] => Array ( ) [error_count] => 4 [errors] => Array ( [0] => A textual day could not be found [3] => The separation symbol could not be found [4] => Trailing data ) [is_localtime] => ) Array ( [year] => [month] => [day] => [hour] => 12 [minute] => 32 [second] => 25 [fraction] => 0 [warning_count] => 0 [warnings] => Array ( ) [error_count] => 0 [errors] => Array ( ) [is_localtime] => )
以下示例演示了相对格式的date_parse_from_format()-
<?php print_r(date_parse_from_format("Y-m-d", "2009-18-18-+52 week +25 hour")); print("\n"); print_r(date_parse_from_format("Y-m-d", "1990-06-06 +52 week +25 hour")); ?>测试看看‹/›
这将产生以下输出-
Array ( [year] => 2009 [month] => 18 [day] => 18 [hour] => [minute] => [second] => [fraction] => [warning_count] => 1 [warnings] => Array ( [10] => The parsed date was invalid ) [error_count] => 1 [errors] => Array ( [10] => Trailing data ) [is_localtime] => ) Array ( [year] => 1990 [month] => 6 [day] => 6 [hour] => [minute] => [second] => [fraction] => [warning_count] => 0 [warnings] => Array ( ) [error_count] => 1 [errors] => Array ( [10] => Trailing data ) [is_localtime] => )