Funkcija za kreiranje kalendara


Ovom funkcijom jednostavno ćete generisati kalendar za bilo koji mesec. Mesec i godinu zadajete kao parametre. Dodatkom CSS-a možete stilizovati kalendar po želji


function makeCalendar($month,$year,$dateArray) 
{
    $daysOfWeek = array('S','M','T','W','T','F','S');
    $firstDayOfMonth = mktime(0,0,0,$month,1,$year);
    $numberDays = date('t',$firstDayOfMonth);     
    $dateComponents = getdate($firstDayOfMonth);
    $monthName = $dateComponents['month'];
    $dayOfWeek = $dateComponents['wday'];

    $calendar = "<table class='calendarTable'>";
    $calendar .= "<caption>$monthName $year</caption>";
    $calendar .= "<tr>";

    foreach($daysOfWeek as $day) 
    {
         $calendar .= "<th class='calendarHeader'>$day</th>";
    } 

    $currentDay = 1;

    $calendar .= "</tr><tr>";
    if ($dayOfWeek > 0) 
    { 
         $calendar .= "<td colspan='$dayOfWeek'>&nbsp;</td>"; 
    }

    $month = str_pad($month, 2, "0", STR_PAD_LEFT);
    while ($currentDay <= $numberDays) 
    {
        if ($dayOfWeek == 7) 
        {
            $dayOfWeek = 0;
            $calendar .= "</tr><tr>";
        }

        $currentDayRel = str_pad($currentDay, 2, "0", STR_PAD_LEFT);

        $date = "$year-$month-$currentDayRel";
        $calendar .= "<td class='calendarDay' rel='$date'>$currentDay</td>";
        $currentDay++;
        $dayOfWeek++;
    }

    if ($dayOfWeek != 7) 
    { 
        $remainingDays = 7 - $dayOfWeek;
        $calendar .= "<td colspan='$remainingDays'>&nbsp;</td>"; 
    }

    $calendar .= "</tr>";
    $calendar .= "</table>";
    return $calendar;
}
 

// Usage example
$date = getdate();
$month = $date['mon'];      
$year = $date['year'];
echo makeCalendar($month,$year,$dateArray); // This will output actual month




Ostavite komentar





Komentari posetilaca


    Ovaj članak nema komentara.
    Budite prvi koji će ostaviti komentar!