• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

fil79

[PHP]script data em php

15 mensagens neste tópico

<?php
/*
///////////////////////////
Script DATA PHP/////////////
///////////////////////////
///////////////////////////
*/
//Definição do array

$meses=array("Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro");

//Declaração das variáveis de data necessárias
$mes=date("m");

//tendo em conta que o array começa no zero é necessário tirar uma unidade
$final=$mes-1;
$dia=date("d");
$ano=date("Y");

//Ciclo para retirar o zero na impressão do dia, caso seja menoa do que dia 10	
if ($dia<10){	
	echo  ("".substr($dia, 1, 2)." de ".$meses[$final]." de ".$ano);

}else{

	//Imprime a data normalmente
	echo  ("".$dia." de ".$meses[$final]." de ".$ano);
	}

?>

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

No parte do $final=$mes-1 não será $final=$mes+1 visto que o array começa da posição 0?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

No parte do $final=$mes-1 não será $final=$mes+1 visto que o array começa da posição 0?

se assim fosse no mês 1 (janeiro) $final=1+1=2...ou seja iria andar sempre dois meses avançado...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Existem muitas funções para datas, mas fizes-te este script com o objectivo de se ter data em português ?

No parte do $final=$mes-1 não será $final=$mes+1 visto que o array começa da posição 0?

se assim fosse no mês 1 (janeiro) $final=1+1=2...ou seja iria andar sempre dois meses avançado...

Exacto, pois o mês de Janeiro é o mês número um, que corresponde ao índice zero do array, logo 1-1 = 0 (Janeiro) ... e o mesmo acontece para os restantes meses. :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Existem muitas funções para datas, mas fizes-te este script com o objectivo de se ter data em português ?

data por extenso em português (e sem zeros à esquerda)...imprime 8 de Janeiro de 2008

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes por o código mais curto, porque existe um argumento da função date que não deixa o "leading zero", basta usares date("j"); para o dia

http://pt2.php.net/date

De resto parece estar bom :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

desconhecia por completo...gracias :P...cá vai a nova versão:



<?php
/*
///////////////////////////
Script DATA PHP/////////////
///////////////////////////
///////////////////////////
*/

//Criação da classe DATA FINAL

class datafinal{

//função que imprime a data por extenso 

function data(){

$meses=array("Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro");

$mes=date("m");
$final=$mes-1;
$dia=date("j");
$ano=date("Y");



echo  ("".$dia." de ".$meses[$final]." de ".$ano);



}



		}

$data=new datafinal;
$data->data();
?>


0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não percebo a utilização de classes... Anyway, já que estás a usar classes/funções, retorna o valor em vez de o imprimires.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

esta é uma classe criada por mim com várias funções relacionadas com datas....como só copiei esta para aqui acabou por ficar lá dentro...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ahh, compreendo. :P

Anyway, já vi por aí um post qualquer (acho que foi do Icaro) com um código semelhante a este, e usou uma coisa que a ti te ajudava.

$meses = array(1 => "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro");

Ao indicares a chave de um elemento como um inteiro, os seguintes vão ter a chave anterior incrementada. :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

obrigado... :P...sabes onde está esse post?

Estive à procura mas não encontrei...
0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pensava que tinha percebido mas afinal parece que não.... :P

não deveria ser assim:


$meses = array(1 => "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro");


$mes=date("m");
$dia=date("j");
$ano=date("Y");


echo  ("".$dia." de ".$meses[$mes]." de ".$ano);



??}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sem testar,

$meses = array(1 => "Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro");

$mes=date("n");
$dia=date("j");
$ano=date("Y");

echo  $dia." de ".$meses[$mes]." de ".$ano;

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

yep..já está..o problema era eu  estar a usar $mes=date("m");...obrigadão :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora