Php convert string para datetime

Php convert string para datetime
Este artigo ensinará como converter uma string simples em um formato de data usando vários métodos e técnicas de PHP.

O básico

Para converter uma string até o momento, usaremos duas funções: strtotime () e a data () funções. Também podemos usar o método DateTime :: CreateFromFormat.

Começaremos com a combinação de funções strtotime () e date ().

Função php strtotime ()

O método php strtotime () permite converter um formato de tempo legível por humanos para o tempo Unix.

O tempo Unix refere -se ao número de segundos decorridos desde 1/1/1970 00:00:00.

A função requer uma sintaxe como mostrado abaixo:

strtotime (string $ datetime)

A função leva o registro de data e hora e retorna a data como um número inteiro se a conversão for bem -sucedida. A função também retorna um false booleano em falha.

OBSERVAÇÃO: A função interpretará vários formatos de maneira diferente. Por exemplo, se você usar o separador como uma barra, o método assumirá o formato de data e hora americano como m/d/y. No entanto, se o separador for um (-), o formato europeu é usado (D-M-Y).

Para ficar do lado seguro, use o formato ISO 8601 (AAAA-MM-DD).

Saiba mais sobre os formatos de data e hora do PHP no recurso fornecido abaixo:

https: // www.php.net/manual/pt/datetime.formatos.php

Dê uma olhada nos exemplos a seguir que mostram como usar a função strtotime ().

eco strtotime ("agora"), "\ n"; // <-- convert time now to unix
eco strtotime ("próximo sexta -feira"), "\ n";
eco strtotime ("+7 semanas"), "\ n";
eco strtotime ("2022-06-06"), "\ n";
eco strtotime ("+10 horas"), "\ n";
?>

Os exemplos acima convertem várias seqüências para seus registros de data e hora relevantes do UNIX.

Função php date ()

A seguinte função que veremos é a função DAT (). Esta função leva um registro de data e hora do Unix e o converte em um formato local de data e hora. A sintaxe da função pode ser expressa como:

data (formato, registro de data e hora);

Aceita um formato de data e hora e um registro de data e hora. Uma vez formatado, a função retorna a data e hora formatada de acordo.

Por exemplo, vamos converter um registro de data e hora específico para uma data e hora.

Echo Data ("d/m/y h: i: s", 1638092852), "\ n";
?>

No exemplo acima, usamos o formato de data para converter um timestamp específico do UNIX até a data/mês/ano de horas: Formato de segundos segundos.

Execute o código acima e você deve obter uma saída como mostrado abaixo:

$ php date_format.php
28/novembro/2021 11:47:32

Combinando strtotime () e date ()

Para converter uma string específica até o formato de data e hora, podemos combinar a função e a data strTotime () como já vimos.

Considere o exemplo mostrado abaixo:

$ timestamp = strTotime ("+10 horas");
Echo Data ("d/m/y h: i: s", $ timestamp), "\ n";
?>

O exemplo abaixo usa a função strTotime () para converter uma string específica em um registro de data e hora do Unix.

Em seguida, usamos a função de data para converter o registro de data e hora em um formato específico de data e hora.

Método 2 - Use DateTime :: createfromFormat ()

O outro método que podemos usar para criar um tempo de dados a partir de uma string é o DateTime :: createfromFormat (). Esta é uma função PHP embutida disponível no Php 5.2 e superior. Ele retorna um objeto DateTime que representa a data e a hora em um formato especificado.

O exemplo abaixo mostra como usá -lo.

$ DATENEW = DateTime :: CreateFromFormat ("Y-M-D", "2022-06-06");
eco $ datenew-> formato ("y-m-d"), "\ n";
?>

O código acima deve retornar a data.

Conclusão

Este guia ensinou a você como converter uma string específica em um formato de data e hora usando métodos PHP integrados.

Obrigado pela leitura!