Função PHP date_create_immutable_from_format ()
Definição e Uso
A função date_create_immutable_from_format () é um alias de DateTimeImmutable :: createFromFormat () . Ele aceita uma string de hora e uma string de formato como parâmetros, analisa a string de hora fornecida no formato especificado e retorna um objeto DateTimeImmutable.
Sintaxe
date_create_immutable_from_format($date, $time [,$timezone])
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 analisar a string de hora fornecida. |
2 |
time(Mandatory) Este é um valor de string que representa o tempo que você precisa para analisar. |
3 |
timezone(Optional) Este é um objeto da classe DateTimeZone que representa o fuso horário desejado. |
Valores Retornados
A função PHP date_create_immutable_from_format () retorna um objeto DateTime representando o tempo analisado. Em caso de falha, esta função retorna o valor booleano falso .
Versão PHP
Esta função foi introduzida pela primeira vez no PHP versão 5.5.0 e funciona com todas as versões posteriores.
Exemplo
O exemplo a seguir demonstra o uso da função date_create_immutable_from_format () -
<?php
//Creating a DateTime object
$date = "25-Mar-1989";
$format = "d-M-Y";
$res = date_create_immutable_from_format($format, $date);
print("Date: ".date_format($res, "Y-m-d"));
?>
Isso produzirá o seguinte resultado -
Date: 1989-03-25
Exemplo
Agora, vamos tentar passar o parâmetro opcional de fuso horário -
<?php
//Creating a DateTime object
$date = "25-Mar-1989";
$format = "d-M-Y";
$tz = new DateTimeZone('Indian/Mahe');
$res = date_create_immutable_from_format($format, $date, $tz);
print date_format($res, "Y-m-d");
?>
Isso produzirá o seguinte resultado -
1989-03-25
Exemplo
O exemplo a seguir demonstra date_create_immutable_from_format () com formatos diferentes -
<?php
$res1 = date_create_immutable_from_format("j.n.Y", "25.8.2014");
print(date_format($res1, "Y-m-d"));
print("\n");
$res2 = date_create_immutable_from_format('Y-d-m H:i:s', '2014-25-08 12:20:25');
print(date_format($res2, "Y-m-d H:i:s"));
?>
Isso produzirá a seguinte saída -
2014-08-25
2014-08-25 12:20:25