Função em PHP que mostra o número da semana no ano
Publicado por albert guedes em 05/08/2011
[ Hits: 28.120 ]
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
Apache 2 com php5 e php4 juntos
Separar caracteres de uma string no PHP
Magento - " Please enter a valid URL. Protocol is required (http://, https:// or ftp://) "
ob_start() - capturar páginas na web ou geradas na hora usando PHP e enviá-las por email
Como montar partições freebsd no linux
Configurando date.timezone do PHP no Fedora 9
Curso gratuito sobre criação de aplicativos em PHP
Framework Ágil - Criando aplicativos amigáveis e com simplicidade
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta