-1

Funções de Calendário no PHP

criado por Marcelo Pereira Fonseca da Silva em 24/08/2005 2:50pm
Primeiramente todas as funções e exemplos foram retiradas do site oficial do PHP.

O link direto é: http://www.php.net/manual/pt_BR/ref.calendar.php

O que é esta extensão?

Ela permite que você trabalhe com vários formatos de calendários apresentando quantidade de dias num mês de vários tipos de calendários e isso facilita na hora de alterar o tipo de calendário (caso haja necessidade)

Dois links interessantes sobre "formato de calendário" estão disponíveis abaixo:

http://www.hermetic.ch/cal_stud/jdn.htm
http://www.boogle.com/info/cal-overview.html

Necessário para habilitar a extensão:

No GNU/Linux, no ./configure use a opção --enable-calendar, e para a família Windows, não é necessário passos de instalação, pois o suporte é embutido no PHP.

Existem algumas funções na página oficial neste artigo irei mostrar alguns exemplos da funcionalidade desta extensão.

cal_days_in_month (PHP 4 >= 4.1.0)

cal_days_in_month -- retorna a quantidade de dias no mês, dependendo do calendário especificado
int cal_days_in_month ( int calendar, int month, int year)

<?php
$dias = cal_days_in_month(CAL_GREGORIAN, 11, 2003); 
echo "Existe $dias dias em agosto de 2003";
?>

Isso pode ser usado dinamicamente para gerar o ano e mês atuais, mantendo assim o seu sistema sempre atualizado.

Um exemplo de uso poderia ser:

<?php
function dias_mes_atual()
{
    $mes_atual = date("m", time());
    $ano_atual = date("Y", time());
    return cal_days_in_month(CAL_GREGORIAN, $mes_atual, $ano_atual);
}
?>

Chamando essa função ela iria retornar a quantidade de dias no mês atual no calendário especificado pelo primeiro argumento dentro de cal_days_in_month (o tipo de calendário pode ser passado para esta pequena função tornando-a mais dinâmica).

Comentários:

Mostrando 1 - 7 de 7 comentários
Parabens meu amigo Show de Bola a sua explicação.
13/10/2005 5:10pm (~11 anos atrás)

Bem interessante
13/09/2005 5:31pm (~11 anos atrás)

Diego Hellas disse:
Muito bom, exelente quebrou o maior galho aqui pra mim.
05/09/2005 3:33pm (~11 anos atrás)

ótimo artigo! vai me servir de muita coisa em meus sistemas que tenho desenvolvido!

muito obrigado mais uma vez
26/08/2005 4:37pm (~11 anos atrás)

Mauricio, heheheh esqueci do detalhe do nome do mês hehehe que também deveria ser dinamico
26/08/2005 8:17am (~11 anos atrás)

Olá Marcelo !
Obrigado pela referência !

Para quem interessar o link do artigo é:
http://www.phpbrasil.com/articles/article.php/pagerRow/0/id/556

Abraços!
25/08/2005 11:13pm (~11 anos atrás)

No seu exemplo é citado:
$dias = cal_days_in_month(CAL_GREGORIAN, 11, 2003);
echo "Existe $dias dias em agosto de 2003";

Na verdade, o texto retornaria:
echo "Existe $dias dias em novembro de 2003";

Já que o parametro month é 11 e não 8
25/08/2005 8:29am (~11 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)