PHP - Calcular el tiempo restante

   
Vista:

Calcular el tiempo restante

Publicado por Sam (138 intervenciones) el 17/06/2016 17:08:04
Hola amigas/os tengo un problemilla a ver si alguien puede echarme una mano:

Tengo un codigo que me permite dada una fecha de alta de un usuario,
mostrar los dias que van quedando hasta una fecha limite para ello hago esto:

1
2
3
4
5
6
7
8
function dias_transcurridos($fecha_alta)
{
	$fecha_alta = date_create($fecha_alta);//fecha registro el cliente
	$fecha_actual   = date_create(date("d.m.Y"));//fecha de actual
	$diferencia     = date_diff($fecha_alta, $fecha_actual);//diferencia entre fecha registro y la actual
 
	return $diferencia->format('%a');
}

Ahora necesito hacer lo mismo pero con una hora dada, es decir dada una hora ,
ir descontando horas minutos y segundos conforme se vaya llegando a una hora limite de plazo.

Pero no se como hacerlo.

Una ayudita seria genial

gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Jorge Eduardo

Calcular el tiempo restante

Publicado por Jorge Eduardo (3 intervenciones) el 17/06/2016 17:57:32
Hola amigo que tal
Existe la clase DateTime
Otra opción es hacerlo desde la propia consulta, si los campos son de tipo DATETIME, algo parecido a esto:

Código PHP:

1
$consulta_fechas = "SELECT FH1, FH2,  (UNIX_TIMESTAMP(FH2)-UNIX_TIMESTAMP(FH1)) AS segundos FROM horario WHERE id_fecha = 1 ";
en el while solo tienes que poner $segundos = $consultSet['segundos']; y tendrás la diferencia en segundos.

espero haberte ayudado !
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Calcular el tiempo restante

Publicado por Sam (138 intervenciones) el 17/06/2016 18:08:20
Gracias Jorge Eduardo, al final yo mismo he dado con la solución que necesitaba.
La voy a poner aquí por si le vale a alguien:

1
2
3
4
5
6
7
8
9
10
11
12
function hms_restantes($hora_alta)
{
	$hora_actual = date("h:i:s");//hora de actual
 
	$hms_restantes = date("H", strtotime("00:00:00") + strtotime($hora_alta) - strtotime($hora_actual)) . " h: ";
 
	$hms_restantes .= date("i", strtotime("00:00:00") + strtotime($hora_alta) - strtotime($hora_actual)) . " min: ";
 
	$hms_restantes .= date("s", strtotime("00:00:00") + strtotime($hora_alta) - strtotime($hora_actual)) . " seg";
 
	return $hms_restantes;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar