Vi hoje no blog do Leandro Vieira uma função para exibição de datas por extenso em PHP.
como já tinha feito algo parecido antes gostaria de mostrar pra vocês, não é uma função, ou melhor, usa funções nativas do PHP.
No PHP existe uma função que seleciona o idioma que você quer usar em seu programa, essa função é a
setlocale().
Ex:
O primeiro parâmetro “LC_TIME”, define a categoria das funções que serão afetadas, nesse caso, afetara as funções de data.
O segundo parâmetro definimos o idioma usado. Esse parâmetro dependa da disponibilidade do idioma instalado no sistema, varia de sistema pra sistema, veja mais sobre no manual da função.
A outra função necessária pra nosso codigo é a strftime(), ela que formatara a data da forma que agente quer.
note que o primeiro parametro é onde configuramos a formatação da data, pode encontra mais a respeito no manual da função, e segundo especificamos o timestamp, se deixamos em branco retornara a data corrente.
E finalmente
Retornara…
segunda, 01 de junho de 1992
Solução bem elegante, mas nem tão eficiente, pois depende da disponibilidade do idioma estar instalar no sistema.
6 Responses
Leandro Vieira Pinho
April 21st, 2007 at 5:09 am
1Olá Alisson,
Obrigado pelo link.
Excelente e função e muito elegante de fato, mas como você falou, dependo da disponibilidade do sistema.
Primeiramente, eu pensei nisso, e sinceramente aqui no meu PC não consegui algo produtivo com o setlocale, motivo que me levou a criar a função.
Mesmo assim, valeu aí.
Um abraço.
kakaroto
April 21st, 2007 at 12:43 pm
2eu iar postar no post do leandro mais esta dando erro
la no blog ,eu tambem achei estranho aquela funcao gigante
pq ele e da antiga no imasters
aqui fiz e assim :
setlocale(LC_ALL, ‘portuguese’);
echo strftime (” %A %d %e %B de %Y”, time());
/*
sexta-feira 20 abril 2007 */
ta no manual do php e tudo o set localle
kakaroto
http://www.obsidian.com.br
kakaroto
April 23rd, 2007 at 1:58 pm
3ops ….
essa linha eu errei
e assim foi mal
echo strftime(”%A, %d de %B de %Y”, time());
um abraço
kakaroto
Alisson Patrício
April 23rd, 2007 at 5:22 pm
4Leandro, eu tambem não tive sucesso na primeira tentativa, mas depois de varias tentivas consegui fazer funcionar.
A maior dificuldade foi em encontrar o “locale” da lingua portuguesa em ambiente windows, em linux é so rodar na shell “locale -a” que ele retorna os “locales” disponiveis no sistema.
Kakaroto, tambem não conseguir comentar no blog do Leandro por isso acabei fazendo este post aqui, e não se preocupe errar é humano e faz parte da aprendizagem.
Um abraço.
Sávio
May 7th, 2008 at 2:35 pm
5A dica do kakaroto ta certa!!!
para português basta colocar:
setlocale(LC_ALL, ‘portuguese’);
Dica de grande ajuda, valeu!!!
Vinicius
December 22nd, 2008 at 12:44 pm
6Ótimo…
tinha uma função gigante pra traduzir isso rs
agora resolvo em duas linhas
RSS feed for comments on this post · TrackBack URI
Leave a reply
Categories
Tags
alisson carlos estevão codeigniter css foto gmail google inline javascript maispiadas natalia php piadas pixel portfolio problema profile projetos reader sql Todas video vmariana wap wml xandeRecent Posts
Recent Comments
Alisson Patrício is proudly powered by WordPress - BloggingPro theme by: Design Disease