New question

Question:

Date: 23-08-2017 15:51:17 (In Spanish)

¿Cuál es el formato de minuto, hora, día y mes que utiliza Facebook en sus POST?[Resolved]

Estoy creando una Red Social cual voy un poco avanzado, pero necesito el formato de fecha que utiliza Facebook en sus publicaciones, ya que el tipo de formato que yo programa no me gusta mucho, es un poco antiguo y además tiene un pequeño promeblema al marcar el día. Es algo como esto 23/5/2017 mi formato de fecha actual....

El que quiero de Facebook es algo asi.... publicado hace un momento... hace 1 minuto... hace 1 dia... hace una semana... hace 1 mes.... hace 1 año...

ya me entenderan
Tags: DateTime - Facebook - PHP - Question - Timestamp - timezone Votes: 1 - Answers: 3 - Views: 20 Share on: Google Facebook Twitter LinkedIn Link
 

Answers:

  • Date: 23-08-2017 20:37:58 Hola Braylin
    He encontrado un artículo que trata sobre el tema que has planteado, creo que te servirá para lo que intentas hacer.

    Echale un vistazo.

    Calcular la diferencia entre dos fechas con PHP cuya fuente original es Calculating difference between two dates in php

    En el artículo de la fuente disponen del siguiente Demo y el codigo para descargar para probar.

    Espero que te sea útil.

    Saludos
      Votes: 2 - Link answer
     
  • Date: 25-08-2017 04:27:57 Es muy sencillo, solo tienes que manejar las fechas de publicación en marcas de tiempo.

    $ahora = time();
    $fecha = strtotime($fechaMysql);
    
    if ( $ahora – $fecha < 60 ) echo 'Hace menos de un minuto.';
    elseif ( $ahora – $fecha < 3600 ) echo 'Hace menos de una hora';
    


    Y así...

    Por cierto creo que en Facebook si pasas el ratón sobre ese texto te aparece la fecha exacta.
      Votes: 3 - Link answer
     
  • Date: 07-09-2017 08:03:05 Esto te deberia valer


    function tiempo_pasado($ptime){
    	 $etime = time() - $ptime;
    	 $year = 12 * 30 * 24 * 60 * 60;
    	 $dia =  24 * 60 * 60;
    	 	
    	if($etime < $dia ){
    		$hh = date('d',$ptime);
    		$hd = date('d',time());
    		if($hh < $hd ){
    			$date = 'ayer '.date('H:i' ,$ptime);
    		}else{
    			$date = date('H:i' ,$ptime);
    		}
    		
    	}else{
    		
    		if( $etime > $year ){
    			
    			$date = date('d/m/Y' ,$ptime);
    		}else{
    			$date = date('d/m' ,$ptime);
    		}
    		
    	}
    	return $date;
    }
    
    function time_elapsed_string($ptime)
    {
        $etime = time() - $ptime;
    
        if ($etime < 1)
        {
            return 'Ahora';
        }
    
        $a = array( 12 * 30 * 24 * 60 * 60  =>  'Año',
                    30 * 24 * 60 * 60       =>  'mes',
                    24 * 60 * 60            =>  'dia',
                    60 * 60                 =>  'hora',
                    60                      =>  'minuto',
                    1                       =>  'secundo'
                    );
    
        foreach ($a as $secs => $str)
        {
            $d = $etime / $secs;
            if ($d >= 1)
            {
            	if($etime >=  30 * 24 * 60 * 60  &&  $etime <=  12 * 30 * 24 * 60 * 60 ){
    				$e = 'e';
    			}else{
    				$e = '';
    			}
            	
                $r = round($d);
                return $r . ' ' . $str . ($r > 1 ?  $e.'s' : '') ;
            }
        }
    }


    suerte
      Votes: 0 - Link answer
     
To actively participate in the community first must authenticate, enter the system.Sign In