Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

andrenx

[Resolvido] Função dia da Semana a partir data do BD

Recommended Posts

Olá, pessoal preciso de uma help!

 

tenho esta função exibe minha da que esta no banco de dados da seguinte maneira: Dia/Mês/Ano gostaria de adicionar Dia da Semana a partir do meu banco de dados alguém poderia me ajuda.

<? if($limite != "1"){ 
$data=explode("-",$dados[data]); echo "$data[2] de "; 
}
if($data[1] == "01"){ echo "Jan";}
if($data[1] == "02"){ echo "Fev";}
if($data[1] == "03"){ echo "Março";}
if($data[1] == "04"){ echo "Abril";}
if($data[1] == "05"){ echo "Maio";}
if($data[1] == "06"){ echo "Junho";}
if($data[1] == "07"){ echo "Julho";}
if($data[1] == "08"){ echo "Agost";}
if($data[1] == "09"){ echo "Setem";}
if($data[1] == "10"){ echo "Outub";}
if($data[1] == "11"){ echo "Novem";}
if($data[1] == "12"){ echo "Dezem";}
echo" de $data[0]";
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você quer pegar o dia da semana a partir da data?

 

Você pode pegar o timestamp com mktime. $ts = mktime(0,0,0,$mes,$dia,$ano);

 

Você precisa dividir esse número pela quantidade de segundos que tem um dia.(60*60*24). $tddiv = $ts / (60*60*24);

 

Agora você tem a quantidade de dias de 1 de janeiro de 1970 até essa sua data.

 

1 de janeiro de 1970 foi uma quinta.

 

Então use o operador módulo para pegar o resto da divisão da quantidade de dias por 7. $diadasemananum= $tddiv % 7 ;

 

para saber qual é o dia da semana:

 

switch($diadasemananum){
case 0:
echo "quinta feira";
break;
case 1:
echo "sexta feira";
break;
case 2:
echo "sabado";
break;
case 3:
echo "domingo";
break;
case 4:
echo "segunda feira";
break;
case 5:
echo "terça feira";
break;
case 6:
echo "quarta feira";
break;




} 

Não se tem uma função para fazer isso, mas você pode fazer uma.

 

 

Não sei se intendi corretamente

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daniel o rei,

Seria basicamente isto 01/05/2012 - Foi a data que o post foi cadastrado no BD, ai quero exibir ele 01 de Maio de 2012 Terça-feira no BD a data esta salva da seguinte maneira: 2013-04-21.

 

Nome da Tabela: data - Tipo date - Padrão: 0000-00-00.

 

Meu PHP e muito fraco.. ainda estou fazendo curso, mais queria muito saber como fazer isto, você teria como explicar mais simples :thumbsup:

 

Eu Até tentei fazer como você falou mais quando não deu erro aparece assim:

02 de Maio de 2012 quinta feira

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daniel o rei,

Seria basicamente isto 01/05/2012 - Foi a data que o post foi cadastrado no BD, ai quero exibir ele 01 de Maio de 2012 Terça-feira no BD a data esta salva da seguinte maneira: 2013-04-21.

 

Nome da Tabela: data - Tipo date - Padrão: 0000-00-00.

 

Meu PHP e muito fraco.. ainda estou fazendo curso, mais queria muito saber como fazer isto, você teria como explicar mais simples :thumbsup:

 

Eu Até tentei fazer como você falou mais quando não deu erro aparece assim:

02 de Maio de 2012 quinta feira

Eu testei:

<?php

$dia= 2;

$mes = 5 ;

$ano = 2012;

$ts = mktime(0,0,0,$mes,$dia,$ano);// pega a timestamp dessa data

$tddiv = $ts / (60*60*24); // transforma o timestamp em dias, dividindo pela quantidade de segundos de um dia.

$diadasemananum= $tddiv % 7 ; // aqui pega o módulo, se for 0 é quinta, 1 sexta...

switch($diadasemananum){ // aqui é um switch para descobrir o dia

case 0:

echo "quinta feira";

break;

case 1:

echo "sexta feira";

break;

case 2:

echo "sabado";

break;

case 3:

echo "domingo";

break;

case 4:

echo "segunda feira";

break;

case 5:

echo "terça feira";

break;

case 6:

echo "quarta feira";

break;

}

?>

 

E funcionou.

 

edit:

Com um switch você pode obter o nome do mês.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Daniel,

 

Resolvido agora sim....

apenas alterei..

de

$dia= 2;

para

$dia= $data[2];

 

 

Muito Obrigado mesmo.. :clap:

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.