/ Published in: PHP
                    
                                        
Questa piccola funzione riceve come argomento uno unix timestamp e ritorna una stringa contenente la "descrizione verbosa" della differenza di tempo. Ad esempio, usando il timestamp relativo a 5 minuti e mezzo fa, ritornerà la stringa "5 minuti e 30 secondi fa".
nota: Funziona anche con timestamp nel futuro, e dando il timestamp attuale ritorna "Adesso".
                nota: Funziona anche con timestamp nel futuro, e dando il timestamp attuale ritorna "Adesso".
                            
                                Expand |
                                Embed | Plain Text
                            
                        
                        Copy this code and paste it in your HTML
/*
* Web site: http://claudiobonifazi.com
* Blog: <under construction>
* Email: [email protected]
* Twitter: @ClaudioBonifazi
*/
function distanzaditempo($data){ // $data = unix timestamp
$flag = $diff>0 ? true:false; // data nel passato o nel futuro?
$secondi = $diff - $minuti*60;
if($flag)
$frase = $anni>0 ? ($anni>1 ? "$anni anni fa" : "L'anno scorso") :
($giorni>0 ? "$giorni giorni ".($giorni<3 ? "e $ore ore" : '').' fa' :
($ore>0 ? "$ore ore ".($ore<8 ? "e $minuti minuti" : '')." fa" :
($minuti>0 ? "$minuti minuti ".($secondi>0 ? "e $secondi secondi" : '')." fa" :
"$secondi secondi fa")));
else
$frase = $anni>0 ? ($anni>1 ? "tra $anni anni" : 'L\'anno prossimo') :
($giorni>0 ? ($giorni==1 ? "domani ".($ore>0 ? 'alle '.date('h') : 'alla stessa ora') : "tra $giorni giorni ".($giorni<3 ? "e $ore ore" : '')) :
($ore>0 ? "tra $ore ore ".($ore<8 ? "e $minuti minuti" : '') :
($minuti>0 ? "tra $minuti minuti ".($secondi>0 ? "e $secondi secondi" : '') :
"tra $secondi secondi")));
if($diff == 0)
$frase = 'adesso';
return $frase;
}
/*
ESEMPI
echo "Il post è stato scritto ".distanzaditempo ( time()-120 ); stamperà"Il post è stato scritto 2 minuti fa"
echo "Il pannello torneràattivo ".distanzaditempo ( time()+86400 ); stamperà"Il pannello torneràattivo Domani alla stessa ora"
echo "Hai aggiunto questo commento ".distanzaditempo ( time() ); stamperà"Hai aggiunto questo commento Adesso"
*/
URL: http://claudiobonifazi.com
Comments
 Subscribe to comments
                    Subscribe to comments
                
                