Ver Mensaje Individual
  #2 (permalink)  
Antiguo 21/02/2011, 18:37
ZeThito
 
Fecha de Ingreso: septiembre-2010
Mensajes: 147
Antigüedad: 14 años, 3 meses
Puntos: 3
Respuesta: Mostrar fecha y tiempo de publicacion.

La solución es :

Código PHP:
Ver original
  1. <?php
  2.  
  3. function tiempo_transcurrido($fecha) {
  4.     if(empty($fecha)) {
  5.           return "No hay fecha";
  6.     }
  7.    
  8.     $intervalos = array("segundo", "minuto", "hora", "día", "semana", "mes", "año");
  9.     $duraciones = array("60","60","24","7","4.35","12");
  10.    
  11.     $ahora = time();
  12.     $Fecha_Unix = strtotime($fecha);
  13.    
  14.     if(empty($Fecha_Unix)) {  
  15.           return "Fecha incorracta";
  16.     }
  17.     if($ahora > $Fecha_Unix) {  
  18.           $diferencia     =$ahora - $Fecha_Unix;
  19.           $tiempo         = "Hace";
  20.     } else {
  21.           $diferencia     = $Fecha_Unix -$ahora;
  22.           $tiempo         = "Dentro de";
  23.     }
  24.     for($j = 0; $diferencia >= $duraciones[$j] && $j < count($duraciones)-1; $j++) {
  25.       $diferencia /= $duraciones[$j];
  26.     }
  27.    
  28.     $diferencia = round($diferencia);
  29.    
  30.     if($diferencia != 1) {
  31.         $intervalos[5].="e"; //MESES
  32.         $intervalos[$j].= "s";
  33.     }
  34.    
  35.     return "$tiempo $diferencia $intervalos[$j]";
  36. }
  37.  
  38. // Ejemplos de uso
  39. // fecha en formato yyyy-mm-dd
  40. // echo tiempo_transcurrido('2010/02/05');
  41. // fecha y hora
  42. echo tiempo_transcurrido('2011/02/21 21:37:00');
  43. ?>