Codice PHP:
<?PHP
    
function datediff($tipo$partenza$fine)
    {
        switch (
$tipo)
        {
            case 
"A" $tipo 365;
            break;
            case 
"M" $tipo = (365 12);
            break;
            case 
"S" $tipo = (365 52);
            break;
            case 
"G" $tipo 1;
            break;
        }
        
$arr_partenza explode("/"$partenza);
        
$partenza_gg $arr_partenza[0];
        
$partenza_mm $arr_partenza[1];
        
$partenza_aa $arr_partenza[2];
        
$arr_fine explode("/"$fine);
        
$fine_gg $arr_fine[0];
        
$fine_mm $arr_fine[1];
        
$fine_aa $arr_fine[2];
        
$date_diff mktime(1200$fine_mm$fine_gg$fine_aa) - mktime(1200$partenza_mm$partenza_gg$partenza_aa);
        
$date_diff  floor(($date_diff 60 60 24) / $tipo);
        return 
$date_diff;
    }
    
    
/* Esempio */
    
echo datediff("A""12/04/1978""11/12/2009");
?>
Il problema è che il valore di $tipo è costante, cioè resta sempre quello, se inserisco A resta A, etc. Invece vorrei che fosse una cosa automatica, per esempio parte da G e quando G raggiunge 7, cioè al settimo giorno diventa S. Consigli?

Grazie