Função em PHP que mostra o número da semana no ano
Publicado por albert guedes em 05/08/2011
[ Hits: 28.757 ]
Blog: https://teko.net.br
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
Mostrar os campos de uma tabela do PostgreSQL com PHP
Mostrar as tabelas de um banco de dados no PostgreSQL usando PHP
Programa exemplo em Assembler para Linux
Usando a Francine para ter um console Linux mais bonito
Resolvendo problema de atualização do Eclipse no Debian Squeeze
Testes Unitários - Um olhar para a qualidade de nossos testes
Laravel 5.4: erro ao rodar o comando migrate (Specified key was too long error) [Resolvido]
txt2tags - convertendo texto em notações especiais
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Criando uma Infraestrutura para uma micro Empresa
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Liberação de alguns links no squid (13)
impressora de rede via dominio - gpo (2)