1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | <?php
class datum
{
var $datum_array, $maand_tabel;
var $kalender;
var $data;
var $van, $tot, $verschil, $nieuwe_datum;
var $dagen, $maanden, $jaren;
var $dag, $maand, $jaar;
function datum ( $dag = 0, $maand = 0, $jaar = 0 )
{
if ( checkdate ( $maand, $dag, $jaar ) == false )
return false;
else
{
$this -> dag = $dag;
$this -> maand = $maand;
$this -> jaar = $jaar;
}
}
function kalender ( $van_jaar, $tot_jaar )
{
if ( $tot_jaar < $van_jaar )
return false;
$this -> jaren = $tot_jaar - $van_jaar;
$this -> maanden = 0;
$this -> dagen = 0;
for ( $i = 0; $i <= $this -> jaren; $i++ )
{
for ( $j = 1; $j <= 12; $j++ )
{
for ( $k = 1; $k <= date ( "t", mktime ( 0, 0, 0, $j, 1, $van_jaar ) ); $k++ )
{
$this -> kalender[$i][$j][$k] = 1; $this -> dagen++;
}
$this -> maanden++;
}
}
}
function maand ( $maand, $jaar, $returnFormat, $data_array = null )
{
$dag = 1;
$kolommen = 0;
$maand_tijd = mktime ( 0, 0, 0, $maand, 1, $jaar );
$dagen_per_maand = date ( "t", $maand_tijd );
$return = "<table>
<tr><td width=20>Ma</td>
<td width=20>Di</td>
<td width=20>Wo</td>
<td width=20>Do</td>
<td width=20>Vr</td>
<td width=20>Za</td>
<td width=20>Zo</td></tr>";
$startrij = date ( "w", $maand_tijd ) - 1;
if ( $startrij < 0 )
$startrij = 6;
while ( $dag <= $dagen_per_maand )
{
if ( $kolommen == 0 )
$return .= "<tr>";
if ( $startrij == 0 )
{
$return .= "<td";
$format = sprintf ( "%04d-%02d-%02d", $jaar, $maand, $dag );
if ( is_array ( $data_array ) && in_array ( $format, $data_array ) )
$return .= " style='font-weight: bold'";
$return .= ">" . sprintf ( $returnFormat, $dag, $maand, $jaar ) . "</td>\n";
$dag++;
}
else
{
$startrij--;
$return .= "<td> </td>\n";
}
$kolommen++;
if ( $kolommen > 6 )
{
$return .= "</tr>\n\n";
$kolommen = 0;
}
}
$return .= "</table>";
$this -> maand_tabel = $return;
return $return;
}
}
?> |