<?php
function settimane($num_set,$anno){
$s=$num_set-1;
$primo_anno=mktime(0,0,0,1,1,$anno);
$primo_giorno=date("w", $primo_anno);
$set[2]=52;
if($primo_giorno==4){
$set[2]=53;
}
if(checkdate(2,29,$anno) && $primo_giorno==3){
$set[2]=53;
}
switch($primo_giorno){
case 1: $delta= -0*(24*60*60); break;
case 2: $delta= -1*(24*60*60); break;
case 3: $delta= -2*(24*60*60); break;
case 4: $delta= -3*(24*60*60); break;
case 5: $delta= 3*(24*60*60); break;
case 6: $delta= 2*(24*60*60); break;
case 0: $delta= 1*(24*60*60); break;
}
$primo_gg_set=($s*7*24*60*60)+$primo_anno+$delta;
$ultimo_gg_set=$primo_gg_set+(6*24*60*60);
$mese=array("","gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre");
$set[0]=date("d", $primo_gg_set)." ".$mese[date("n",$primo_gg_set)]." ".date("Y",$primo_gg_set);
$set[1]=date("d", $ultimo_gg_set)." ".$mese[date("n",$ultimo_gg_set)]." ".date("Y",$ultimo_gg_set);
return $set;
}
$a=2013;
$num_set=52;
for($k=1; $k <=$num_set;$k++){
$vedi=settimane($k,$a);
$num_set=$vedi[2];
echo "anno $a: $k ° settimana va dal ".$vedi[0]." al ".$vedi[1]."<br />";
}
?>