Calcular tiempo transcurrido entre una fecha y la actual
Esta función recibe como parámetro una fecha UNIX y devuelve el tiempo transcurrido desde esa fecha en una sola unidad de tiempo.
Es decir, si han pasago 465 días desde entonces, devolverá: «hace un año«. Si han pasado 345 segundos, devolverá «hace 6 minutos«, etc. Es la típica función utilizada para poner el tiempo transcurrido desde que se publicó un post o un comentario por ejemplo.
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22  | 
						function ago($time) {     $periodos = array("segundo", "minuto", "hora", "día", "semana", "mes", "año", "década");     $duraciones = array("60","60","24","7","4.35","12","10");     $now = time();     $diferencia = $now - $time;     for($j = 0; $diferencia >= $duraciones[$j] && $j < count($duraciones)-1; $j++) {         $diferencia /= $duraciones[$j];     }     $diferencia = round($diferencia);     if($diferencia != 1) {         if($j != 5){             $periodos[$j].= "s";         }else{             $periodos[$j].= "es";         }     }    return "hace $diferencia $periodos[$j]"; }  |