Função em PHP que mostra o número da semana no ano

Publicado por albert guedes em 05/08/2011

[ Hits: 27.345 ]

Blog: https://teko.net.br

 


Função em PHP que mostra o número da semana no ano



Essa é uma função que não se encontra explicitamente pela net. Se você precisa saber o número da semana no ano, use a seguinte função.

function semana_do_ano($dia,$mes,$ano){

$var=intval( date('z', mktime(0,0,0,$mes,$dia,$ano) ) / 7 ) + 1;

return $var;
}

Basta dar o dia, o mês e o ano, que será retornado o número da semana no ano daquele dia do mês.
A função funciona assim: é calculado quantos dias se passaram entre o dia 1 de janeiro do ano até a data fornecida, isso é realizado com o mktime e o date.
Depois, dividimos por 7 para dar o número de semanas contidos nesse tempo. intval retorna o inteiro dessa divisão, e assim, a função retorna o número de semanas que se passaram, ou seja, o número da semana no ano.

Explicando as funções usadas:
mktime ($hora,$minuto,$segundo,$mes,$dia,$ano) : Retorna o timestamp Unix correspondente para os argumentos dados. Este timestamp é um longo inteiro contendo o número de segundos entre a Era Unix (January 1 1970 00:00:00 GMT) e o tempo especificado. Argumentos podem ser omitidos da direita para esquerda; quaisquer argumentos assim omitidos serão definidos para o valor atual de acordo com a data e a hora local.

date ($formato,$timestamp) : Retorna uma string formatada de acordo com a string '$formato' dada usando o inteiro '$timestamp' dado ou a hora atual se nenhum timestamp é dado. Em outras palavras, timestamp é opcional e o padrão é o valor da função 'time()'.

intval ($var) : Retorna o valor inteiro de '$var', usando a base especificada para a conversão (o padrão é a base 10).

Referências: http://php.net

Outras dicas deste autor

Janelas sem borda no Fluxbox

Ache vídeos do youtube facilmente

Como montar partições freebsd no linux

Separar palavras de uma string no PHP

Placa Wireless Atheros AR5001 - Configuração no Debian Squeeze

Leitura recomendada

Framework Ágil usando PDO - Criando aplicativos amigáveis com facilidade

Facilitanto sua vida com phpMyAdmin

Controle de acesso Web para framework CakePHP

Bug do PHP

Open livro de PHP

  

Comentários
[1] Comentário enviado por Scoup em 05/08/2011 - 23:03h

Você pode usar o parametro "W" do date que faz exatamente isso.

Exemplo: date("W", strtotime("05/01/2011")); sendo que o date é no formato mes/dia/ano

Fonte: http://www.php.net/manual/en/function.date.php

[2] Comentário enviado por albertguedes em 06/08/2011 - 00:56h

Vale pelo complemento Scoup.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts