Visto che avevo tempo ti ho scritto una classe
Codice PHP:
class VarImage
{
var $ImmDb = array();
var $ImmResult;
var $ImmDefault;
function AddImage ($day, $h_start, $h_end, $image)
{
$str = $day . ":" . $h_start . ":" . $h_end . ":" . $image;
$this->ImmDb[] = $str;
}
function SelectImage ()
{
$day = date("w");
$now = date("Hi");
$max = count($this->ImmDb);
for ($i = 0; $i < $max; $i++)
{
$val = explode(":", $this->ImmDb[$i]);
if ($val[0] == $day AND $val[1] <= $now AND $val[2] >= $now)
{
$this->ImmResult = $val[3];
break;
}
else
{
$this->ImmResult = $this->ImmDefault;
}
}
return $this->ImmResult;
}
}
La usi così:
Codice PHP:
$imm = new VarImage(); //istanzi la classe
//Aggingi tutte le immagini che vuoi
$imm->AddImage(3,1000,2000,"1.jpg"); //Questa verrà mostrata mercoledì dalle 10:00 alle 20:00
$imm->AddImage(1,2000,2355,"2.jpg"); //Questa verrà mostrata lunedì dalle 20:00 alle 23:55
$imm->AddImage(0,0700,0900,"3.jpg");// Questa verrà mostrata domenica dalle 7:00 alle 9:00
$imm->ImmDefault = "def.jpg"; // con questa proprietà definisci l'immagine di default, ovvero quando nessun'altra immagine è prevista
$imm->SelectImage(); //Questo metodo restituisce l'immagine richiesta per l'ora e il giorno attuale
Guarda che non ho messo nessun controllo, tipo due orari possono essere sovrapposti