Mam cyklus ktory vracia den v mesiaci. Potrebujem z toho dna urobit modulo aby som dostal hodnoty 0-3.
Skusal som toto:
Kód: Vybrať všetko
<?php
class Ccolor {
var $wday_txt = "#2E8D73";
var $wend_txt = "#008844";
var $wday1 = "#F7F7F7";
var $wend1 = "#D8D8D8";
var $wday = "#00CA65";
var $wend = "#33C849";
var $wday_noact = "#FFFFFF";
var $dovday = "#FFFF80";
var $wend_noact = "#FFFFFF";
var $today = "#ffffc0";
var $mesiacmin = "#000000";
var $mesiacmin1 = "#FFFFFF";
} ;
// objekt
$color = new Ccolor ();
class Cdate {
var $day;
var $month;
var $year;
function Cdate ($time) {
$this->day = date ("j", $time);
$this->month = date ("n", $time);
$this->year = date ("Y", $time);
}
}
// objekt
$date = isset ( $time ) ? new Cdate ( $time ) : new Cdate ( time () );
echo "<table border='0' cellspacing='1' cellpadding='0'>";
echo "<tr align='center' valign='bottom' >";
echo "<td rowspan=3 width=160 ><b><i> </i></b></td>";
$date->day = 7 - date ("w", mktime (0, 0, 0, $date->month, 0, $date->year));
$act_month_end = false;
for (;;) {
// deň za dňom
$t = mktime (0, 0, 0, $date->month, $date->day++ , $date->year);
// číslo mesiaca [1-12]
$date_n = date ("n", $t);
// číslo týždňa [0-6] (Ne,Po,Ut,..)
$date_w = date ("w", $t);
if ($date_n == $date->month)
$act_month_end = true;
// prvý pondelok v ďalšom mesiaci - ukonči riadok - koniec cyklu
if ($act_month_end == true && $date_n != $date->month ) {
echo "</tr>";
break;
}
// pondelok - nový riadok
// predchádzajúci, alebo nasledujúci mesiac
if ($date_n != $date->month) {
$bgcolor = ($date_w==0 || $date_w==6) ? $color->wend_noact : $color->wday_noact;
}
// aktuálny mesiac
else {
$bgcolor = ($date_w==0 || $date_w==6) ? $color->wend1 : $color->wday1;
}
if ($date_n != $date->month)
$bgcolor = ($date_w==0 || $date_w==6) ? $color->wend_noact : $color->wday_noact;
$modulo = $t % 8;
If ($modulo >=0 and $modulo <= 1) {
$zmena = "D";
}
else {
If ($modulo >=2 and $modulo <= 3) {
$zmena = "N";
}
else {
$zmena= " ";
}
}
echo "<td align=center bgcolor='$bgcolor' class='cell'>".$modulo."</td>";
// nedeľa - koniec riadku
}
echo "</table>";
Vdaka za kazdu radu.