Abaixo há uma função em PHP para exibir datas por extenso no seguinte formato: [Nome do dia da semana], [dia do mês] de [Nome do mês] de [Ano com 4 dígitos]. Um exemplo: Terça-feira, 17 de Abril de 2007.
Para utilizá-la proceda assim:
echo formata_data_extenso('2007-04-17');
echo formata_data_extenso('2007-04-17 15:20:35');
Essa função é muito útil quando se deseja formatar as datas armazenadas em um banco de dados MySQL, por exemplo; em que elas estão armazenadas no formato date, datetime ou timestamp.
Já falhei por aqui sobre Formatar as datas do MySQL com SQL ou PHP. O código da função segue abaixo:
/**
* Esta função retorna uma data escrita da seguinte maneira:
* Exemplo: Terça-feira, 17 de Abril de 2007
* @author Leandro Vieira Pinho [http://leandro.w3invent.com.br]
* @param string $strDate data a ser analizada; por exemplo: 2007-04-17 15:10:59
* @return string
*/
function formata_data_extenso($strDate)
{
// Array com os dia da semana em português;
$arrDaysOfWeek = array('Domingo','Segunda-feira','Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado');
// Array com os meses do ano em português;
$arrMonthsOfYear = array(1 => 'Janeiro','Fevereiro','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro');
// Descobre o dia da semana
$intDayOfWeek = date('w',strtotime($strDate));
// Descobre o dia do mês
$intDayOfMonth = date('d',strtotime($strDate));
// Descobre o mês
$intMonthOfYear = date('n',strtotime($strDate));
// Descobre o ano
$intYear = date('Y',strtotime($strDate));
// Formato a ser retornado
return $arrDaysOfWeek[$intDayOfWeek] . ', ' . $intDayOfMonth . ' de ' . $arrMonthsOfYear[$intMonthOfYear] . ' de ' . $intYear;
}
Comentários para melhoria são bem-vindos.
Pingback: Os melhores amigos deste blog - dudu tomaselli
Pingback: Leandro Vieira Pinho´s Blog » Blog Archive » Boas técnicas de SEO garantem 1º lugar no Google, com apenas 2 dias
Pingback: Alisson Patrício
Ótimo, bem comentada, ajuda bastante!
Pingback: E-balaio » Função em PHP para formatar datas com timestamp MySQL
Bacana. Uma simples e ótima explicação de tratamento de datas. Parabens pela dica e muito obrigado.
Bruno Estevao
http://www.sempihost.com.br