Scientist 2 Denunciar post Postado Março 19, 2013 Bom, a data e hora no formato brasileiro é da seguinte forma: d/m/Y H:i No formato americano (aceitável pelo Mysql), fica assim: Y-m-d H:i Como, fazer a conversão do formato brasileiro para o formato americano ? Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Março 19, 2013 https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-formathttp://www.w3schools.com/sql/func_date_format.asp http://www.php.net/manual/en/datetime.format.php Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Xavier 189 Denunciar post Postado Março 19, 2013 Ótima leitura recomendada shini Compartilhar este post Link para o post Compartilhar em outros sites
Scientist 2 Denunciar post Postado Março 19, 2013 Tentei da seguinte forma e não funcionou $dt = new DateTime('19/03/2013 12:42'); $this->dthora_final = $dt->format('Y-m-d H:i'); Da o seguinte erro: Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct() [<a href='datetime.--construct'>datetime.--construct</a>]: Failed to parse time string (19/03/2013 12:42) at position 0 (1): Unexpected character' PS: QUero fazer isso em PHP e não no MySQL Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Xavier 189 Denunciar post Postado Março 19, 2013 Testa essas funções ae e adapte para seu uso. function ExibeData($data){ return date("d-m-Y", strtotime($data));//exibe no formato d/m/a } function FormataData($data){ return date("Y-m-d",strtotime($data));//formata para a-m-d } echo FormataData("19-03-2013");//testa no formato19/03/2013 echo ExibeData("2013-03-19");//testa no formato 2013/03/19 Compartilhar este post Link para o post Compartilhar em outros sites
Scientist 2 Denunciar post Postado Março 19, 2013 Fiz assim return date("Y-m-d H:i:s",strtotime($datahora)); Ele retorna a data assim: 31/12/1969 21:00 totalmente errada. Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Xavier 189 Denunciar post Postado Março 19, 2013 function ExibeData($data){ return date("d-m-Y H:i:s", strtotime($data));//exibe no formato d/m/a } function FormataData($data){ return date("Y-m-d H:i:s",strtotime($data)); } echo ExibeData("2013-03-19 12:01:10");//exibe 19-03-2013 12:01:10 echo FormataData("19-03-2013 12:01:10");//exibe 2013-03-19 12:01:10 Veja o link http://codepad.org/rUWI6lXc Compartilhar este post Link para o post Compartilhar em outros sites
Scientist 2 Denunciar post Postado Março 19, 2013 Resolvido ! A Sua solução funcionou ! Compartilhar este post Link para o post Compartilhar em outros sites
Marcos Xavier 189 Denunciar post Postado Março 19, 2013 Como você está chamando a função? Posta entre as tags code e não quote. Veja também o link Compartilhar este post Link para o post Compartilhar em outros sites
hufersil 145 Denunciar post Postado Março 20, 2013 $dataString = '19/03/2013 11:22'; $date = DateTime::createFromFormat('d/m/Y H:i', $dataString); echo $date->format('Y-m-d H:i:s'); PHP 5.3+ @braços e fique com Deus! Compartilhar este post Link para o post Compartilhar em outros sites
Scientist 2 Denunciar post Postado Março 21, 2013 Resolvido !! Compartilhar este post Link para o post Compartilhar em outros sites