Foros del Web » Programando para Internet » PHP »

restar un dia a fecha dinamica

Estas en el tema de restar un dia a fecha dinamica en el foro de PHP en Foros del Web. Hola a todos, he encontrado en Internet la forma de restar un dia a una fecha, pero generalmente le restan la fecha actual del sistema, ...
  #1 (permalink)  
Antiguo 26/09/2011, 15:58
 
Fecha de Ingreso: abril-2009
Ubicación: Colombia
Mensajes: 949
Antigüedad: 15 años
Puntos: 27
restar un dia a fecha dinamica

Hola a todos, he encontrado en Internet la forma de restar un dia a una fecha, pero generalmente le restan la fecha actual del sistema, y yo lo que requiero es restarle un dia a una fecha que el usuario ingresa

Lo hago asi:
Código PHP:
Ver original
  1. <?php
  2. $fecha=$_POST['fecinicial']; //recibo la fecha
  3. $hora = date("H:i:s", strtotime("-1 hour")); // capturo la hora
  4. $fecha=$fecha." ".$hora; //uno la cadena fecha y hora
  5. // que me muestra lo siguiente:
  6.  
  7. //26/09/2011 16:53:07
  8.  
  9. //Ahora lo que requiero es que esa fecha se le reste un dia
  10. //lo hice asi:
  11.  
  12. $fecha_menos24hs = date($fecha,time()-(24*60*60));
  13.  
  14. //Pero me sigue mostrando la misma fecha:
  15.  
  16. //26/09/2011 16:53:07
  17. ?>

Como podria restar el dia entonces??
Agradezco me puedan ayudar...gracias
  #2 (permalink)  
Antiguo 26/09/2011, 16:20
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: restar un dia a fecha dinamica

Creo que no hay que explicar.

Código PHP:
Ver original
  1. <?php
  2. $fecha = '26-09-2011 17:00:00'; //tu fecha
  3. echo date('d-m-Y H:i:s', strtotime($fecha . ' -1 day')); //resto 1 día
  4. //Resultado: 25-09-2011 17:00:00

http://php.net/manual/es/function.strtotime.php
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #3 (permalink)  
Antiguo 26/09/2011, 16:24
 
Fecha de Ingreso: abril-2009
Ubicación: Colombia
Mensajes: 949
Antigüedad: 15 años
Puntos: 27
Respuesta: restar un dia a fecha dinamica

Pues no se cual sea mi problema pero me esta mostrando ahora esto:

31-12-1969 19:00:00

Porque?
  #4 (permalink)  
Antiguo 26/09/2011, 16:33
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: restar un dia a fecha dinamica

Cita:
Iniciado por oscarbt Ver Mensaje
Pues no se cual sea mi problema pero me esta mostrando ahora esto:

31-12-1969 19:00:00

Porque?
Porque estás pasando parámetros incorrectos a las funciones, te recomiendo que analices el ejemplo que te acabo de dejar y leas sobre la función date.

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #5 (permalink)  
Antiguo 26/09/2011, 16:39
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: restar un dia a fecha dinamica

Código PHP:
Ver original
  1. $fecha=$_POST['fecinicial']; //recibo la fecha
  2. $hora = date("H:i:s", strtotime("-1 hour")); // capturo la hora
  3. $fecha=$fecha." ".$hora; //uno la cadena fecha y hora
  4. // que me muestra lo siguiente:
  5.  
  6. //26/09/2011 16:53:07
  7.  
  8.  
  9. //ya tenemos la fecha hay que restarle el dia
  10.  
  11. $undia=24*60*60;
  12. // o bien podria ser directamente asi
  13.  
  14. $undia=86400;
  15.  
  16.  
  17.  
  18. $fecha_menos24hs = date("d/m/Y H:i:s",strtotime($fecha)-$undia);
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #6 (permalink)  
Antiguo 26/09/2011, 16:45
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: restar un dia a fecha dinamica

Como nota, tambien podrías usar mktime() + strtotime()
date("d-m-Y H:i:s", strtotime($fechaDinamica) - mktime(1,0,0,0,0,0));
  #7 (permalink)  
Antiguo 27/09/2011, 06:05
 
Fecha de Ingreso: abril-2009
Ubicación: Colombia
Mensajes: 949
Antigüedad: 15 años
Puntos: 27
Respuesta: restar un dia a fecha dinamica

Ok, gracias a todos por la ayuda...........

Etiquetas: dia, dinamica, fecha, restar, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:11.