<?php

/***************************\ 

  ^ Grupa: TS 
  ^ www.Twoja-Strona.Net 
  ^ Funkcja: kalendarz
  ^ Funkcja: miesiac

  -----------------------
  + Uniwersalny kalendarz
    dla obecnego roku, z 
    uwzględnieniem lat
    przystępnych.  

\***************************/ 


function miesiac ($id) {
    switch (
$id) {
 
       case 
"1"$miesiac 'Styczeń'; break;
       case 
"2"$miesiac 'Luty'; break;
       case 
"3"$miesiac 'Marzec'; break;
       case 
"4"$miesiac 'Kwiecień'; break;
       case 
"5"$miesiac 'Maj'; break;
       case 
"6"$miesiac 'Czerwiec'; break;
       case 
"7"$miesiac 'Lipiec'; break;
       case 
"8"$miesiac 'Sierpień'; break;
       case 
"9"$miesiac 'Wrzesień'; break;
       case 
"10"$miesiac 'Październik'; break;
       case 
"11"$miesiac 'Listopad'; break;
       case 
"12"$miesiac 'Grudzień'; break;    
    
    } 
    return 
$miesiac
}

function 
kalendarz ($n_miesiac=0) {

   
/* $n_miesiac typ int(1,12) */

   
$n_miesiac = ($n_miesiac 12 || $n_miesiac 1) ? date("m") : $n_miesiac;

   list (
$rok$miesiac$dzien) = explode ("-"date("Y-".$n_miesiac."-1"));
   
$czas mktime (000$miesiac$dzien$rok);
 
   
$numer_dnia date ("w"$czas);
   
$numer_dnia = ($numer_dnia == 0) ? $numer_dnia;
   
$max_dni date ("t"$czas);
   
   for (
$i=1$x=1$i $max_dni+$numer_dnia$i++) {
        
        if (
$i >= $numer_dnia && $i $max_dni+$numer_dnia) {
            
$tab_dni[$i] = $x;
            
$x++; 
        } else {
            
$tab_dni[$i] = '-';
        } 
   }

   echo 
'<b>'.date("Y").', '.miesiac(date($n_miesiac)).'</b><br>';

   echo 
'<table border="0" cellpadding="2" cellspacing="2"><tr>'.
        
'<td align="center">Pn</td> <td align="center">Wt</td> <td align="center">Śr</td> <td align="center">Cz</td> <td align="center">Pt</td> <td align="center">So</td> <td align="center">N</td>'.
        
'</tr><tr>'

   
$n 0;   

   foreach (
$tab_dni as $e => $key) {

            switch (
$n) {

                    case 
'5':
                     
$bgcolor '#ffffb1';
                    break;
                
                     case 
'6':
                      
$bgcolor '#ffc7b1';
                     break;

                     default:
                      
$bgcolor '#e6e6e6';
                     break; 

            }                         

            if (
$key == date("d") && $n_miesiac == date("m")) {$bgcolor '#d4ff8e';}

            if (
$n 7) {
                echo 
'<td bgcolor="'.$bgcolor.'">'.$key.'</td>'."\n";
                
$n++;
            } else {
                echo 
'</tr>'."\n".'<tr>'."\n".'<td bgcolor="'.$bgcolor.'">'.$key.''."\n".'</td>';
                
$n 1
            } 
   }

   echo 
'</tr></table>';





/* Przykład wykorzystania */

echo 'Kalendarz dla obecnego miesiąca:<br><br>';
echo 
kalendarz(0);

echo 
'<br><br><br>';

echo 
'Kalendarz dla grudnia obecnego roku:<br><br>';
echo 
kalendarz(12);

?>