Formatar data em php

MySQL

PHP

30/01/2017

Olá pessoal, estou com mais uma dúvida que esta tirando meu sono.

O formato das datas em meu banco é o padrão aaaa-mm-ddd h:m:s eu preciso fazer ele aparecer no formato 04 de Fevereiro 14:55.

Até ai eu consigo fazer o problema está aqui, eu preciso fazer isso dentro de uma echo que está deste jeito:

echo "<li><a href='#' style='padding: 10px;'>$hora_inicio</a></li>";


O código do banco completo esta assim:

<?php
$ativo = 1;
try {
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 	
    $stmt = $conn->prepare('SELECT * FROM blocos WHERE ativo = :id');
    $stmt->execute(array('id' => $ativo));
    while($r= $stmt->fetch()) {
    $hora_inicio = $r['hora_inicio'];
    echo "<li><a href='#' style='padding: 10px;'>$hora_inicio</a></li>";
    }
} catch(PDOException $e) {
    echo 'ERROR: ' . $e->getMessage();
}
?>


Isso está dentro de uma ul que vai virar um menú com todas as datas que eu tenho, dentro dessa datas vão ter o conteúdo da tabela como nome endereço e a data...
O que posso fazer para resolver este problema?

Muito obrigadooo...
Lennon Azevedo

Lennon Azevedo

Curtidas 0

Respostas

Fernando Gaspar

Fernando Gaspar

30/01/2017

Fala Lennon, beleza brother?

Vamos lá, você pode matar esse problema e voltar a dormir tranquilo utilizando a função date_format, você utilizar de duas formas:

<?php
echo $hora_inicio->format('d F H:i');
?>


ou utilizar o estilo procedural que vai gerar o mesmo resultado:

<?php
echo date_format($hora_inicio, 'd F H:i');
?>


Porem só tem uma questão o valor ''F'' vai te retornar a data em inglês, porem pode pegar valor numeral utilizando o ''m'' e tratar na sua aplicação.

Espero ter ajudado forte abraço!
GOSTEI 0
Eduardo Guimaraes

Eduardo Guimaraes

30/01/2017

Lennon,

Caso não consiga utilizar o date_format para o nosso padrão por algum motivo esquisito (como aconteceu comigo), pode fazer assim:

echo substr($data,8,2).'/'.substr($data,5,2).'/'.substr($data,0,4)


Não é o mais recomendável, mas é uma boa saída.
GOSTEI 0
POSTAR