Existe uma maneira simples para converter o formato de data para outro formato de data em PHP?
Eu tenho isso:
1 2 3 | $oldDate = date('y-m-d-h-i-s'); //Esto funciona $aux = strtotime($oldDate); //Esto devuelve false $newDate = date('Y-m-d H:i:s', $aux); //Devuelve 1970-01-01 00:00:00 |
O que estou fazendo errado?
O segundo parâmetro que você passar Data() deve ser um parâmetro apropriado, ou seja, os segundos desde a 1 em janeiro de 1970. A sequência de caracteres que você passá-lo não o reconhece.
Ele usa strtotime()
para converter uma sequência de caracteres de data em um Timestamp, Embora nem mesmo strtotime() vai reconhecer y-m-d-h-i-s
.
PHP 5.3 a seguir
Uso DateTime::createFromFormat
. Permite que você especifique uma máscara precisa usando a sintaxe de Data() para analisar a data de entrada.
PHP 5.2 e anterior
Você tem que digitalizar itens (ano, mês, dia, tempo, minuto, segundo) usando substr() e passar os resultados para mktime () para construir um timestamp.
Um monte de trabalho! Eu recomendo usar um formato diferente strtotime() Você precisa saber. Tente isso:
1 2 3 | $oldDate = date('l, F d y h:i:s'); // devuelve Sabado, Enero 30 10 02:06:34 $auxTS = strtotime($oldDate); $newDate = date('Y-m-d H:i:s', $auxTS); |
Por favor,, logar ou Registre-se para fazer uma pergunta