Tengo una variable PHP DateTime
.PHP, necesito restar 12 horas y 30 minutos de un DateTime
¿Cómo puedo reducir o restar 12 horas y 30 minutos desde esta fecha en el tiempo de ejecución de PHP?
Tengo una variable PHP DateTime
.PHP, necesito restar 12 horas y 30 minutos de un DateTime
¿Cómo puedo reducir o restar 12 horas y 30 minutos desde esta fecha en el tiempo de ejecución de PHP?
Reste 12 horas y 30 minutos de un DateTime en PHP:
$date = new DateTime();
$tosub = new DateInterval('PT12H30M');
$date->sub($tosub);
la P significa Período. La T significa Timespan.
Consulte DateTime, DateTime::sub y DateInterval en el manual de PHP. Tendrá que configurar el DateTime
en la fecha y hora apropiadas, por supuesto.
Almacénelo en un objeto DateTime
y luego utilice el método DateTime::sub
para restar el intervalo de tiempo.
Eso no es muy útil en este caso. Él realmente debería estar usando un objeto 'DateTime'. –
Sí, lo actualicé ... de hecho vi varias preguntas de él aquí y allá sobre el objeto datetime, así que será útil para él. –
Trate strtotime()
función:
$source_timestamp=strtotime("Sat, 30 Apr 2011 05:00:00 -0400"); $new_timestamp=strtotime("-12 hour 30 minute", $source_timestamp); print date('r', $new_timestamp);
intento con:
$date = new DateTime('Sat, 30 Apr 2011 05:00:00 -0400');
echo $date->format('Y-m-d H:i:s') . "\n";
$date->sub(new DateInterval('PT12H30M'));
echo $date->format('Y-m-d H:i:s') . "\n";
// Resultado
2011-04-30 05:00:00
2011-04-29 16:30:00
tratar de usar esto en vez
//set timezone
date_default_timezone_set('GMT');
//set an date and time to work with
$start = '2014-06-01 14:00:00';
//display the converted time
echo date('Y-m-d H:i',strtotime('+1 hour +20 minutes',strtotime($start)));
Utilizando simplemente strtotime
echo date("Y-m-d H:i:s",strtotime("-12 hour -30 minutes"));
Usando DateTime
clase
$date = new DateTime("-12 hour -30 minutes");
echo $date->format("Y-m-d H:i:s");
si su MySQL, utilizaría DATE_SUB() –
¿Ha considerar seleccionar una respuesta? – Cito