Função PHP date_parse_from_format ()
Definição e Uso
A função date_parse_from_format () aceita uma string de formato e uma string de data como parâmetros e retorna informações sobre a data fornecida no formato especificado.
Sintaxe
date_parse($date)
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 | format(Mandatory) Este é um valor de string que representa o formato no qual você precisa formatar as informações sobre a data. |
2 | date(Mandatory) Este é um valor de string que representa a data sobre a qual você precisa das informações. |
Valores Retornados
A função PHP date_create_from_format () retorna um array contendo as informações sobre a data dada no formato especificado.
Versão PHP
Esta função foi introduzida pela primeira vez no PHP versão 5.3.0 e funciona com todas as versões posteriores.
Exemplo
O exemplo a seguir demonstra o uso da função date_parse_from_format () -
<?php
//Creating a DateTime object
$date = "25-Mar-1989";
$format = "d-M-Y";
$res = date_parse_from_format($format, $date);
print_r($res);
?>
Isso produzirá o seguinte resultado -
Array
(
[year] => 1989
[month] => 3
[day] => 25
[hour] =>
[minute] =>
[second] =>
[fraction] =>
[warning_count] => 0
[warnings] => Array
(
)
[error_count] => 0
[errors] => Array
(
)
[is_localtime] =>
)
Exemplo
Vamos ver diferentes formatos para analisar uma data -
<?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);
?>
Isso produzirá o seguinte resultado -
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] =>
)
Exemplo
O exemplo a seguir demonstra date_parse_from_format () com formatos relativos -
<?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"));
?>
Isso produzirá a seguinte saída -
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] =>
)