Realmente estoy atascado agregando X minutos a una fecha y hora, después de hacer muchas búsquedas en Google y leer manuales de PHP, parece que no estoy llegando a ningún lado.
El formato de fecha y hora que tengo es:
2011-11-17 05:05
: year-month-day hour:minute
Los minutos para agregar serán solo un número entre 0 y 59
Me gustaría que el resultado fuera el mismo que el formato de entrada con los minutos agregados.
¿Alguien podría darme un ejemplo de código que funcione, ya que mis intentos no parecen llevarme a ninguna parte?
strtotime
produce una marca de tiempo de Unix como unainteger
que es útil si, por ejemplo, está ordenando fechas en php. LaDateTime
clase proporciona opciones para operaciones de estilo de procedimiento y objeto. Es más legible y también tiene mejor soporte para manejar diferencias entre diferentes zonas horarias; por ejemplo, si tiene un proyecto que genera fechas para numerosas zonas horarias diferentes provenientes de la misma instancia de datos.La clase DateTime de PHP tiene un método de modificación útil que toma texto fácil de entender.
También puede usar la interpolación o concatenación de cadenas para parametrizarlo:
fuente
el resultado es
La demostración en vivo es
here
Si aún no está familiarizado
strtotime
, es mejor que se dirijaphp.net
a descubrir su gran poder :-)fuente
Puede hacer esto con funciones nativas fácilmente:
Sin embargo, recomendaría el método de clase DateTime, que acaba de publicar Tim.
fuente
Pensé que esto también ayudaría a algunos cuando se trata de zonas horarias. Mi solución modificada se basa en la solución de @Tim Cooper, la respuesta correcta anterior.
La línea en negrita, línea 3, es la adición. Espero que esto también ayude a algunas personas.
fuente
Una respuesta un poco tardía, pero el método que usaría es:
O en PHP> = 5.4
fuente
Si quieres dar una variable que contenga los minutos.
Entonces creo que esta es una excelente manera de lograrlo.
fuente
Utilizar
strtotime("+5 minute", $date);
Ejemplo:
fuente
No sé por qué el enfoque establecido como solución no funcionó para mí. Así que estoy publicando aquí lo que funcionó para mí con la esperanza de que pueda ayudar a cualquiera:
fuente
Como señalaron Brad y Nemoden en sus respuestas anteriores, strtotime () es una gran función. Personalmente, encontré que el objeto DateTime estándar es demasiado complicado para muchos casos de uso. Solo quería agregar 5 minutos a la hora actual, por ejemplo.
Escribí una función que devuelve una fecha como una cadena con algunos parámetros opcionales:
1.) hora: Cadena | ej .: "+5 minutos" (predeterminado = hora actual)
2.) formato: Cadena | ej .: "Ymd H: i: s" (predeterminado = "Ymd H: i: s O")
Obviamente, este no es un método con todas las funciones. Solo una función rápida y sencilla para modificar / formatear la fecha actual.
fuente
Un ejemplo más de una función para hacer esto: (cambiando los formatos de tiempo e intervalo como desee de acuerdo con esto para function.date , y esto para DateInterval ):
(También escribí una forma alternativa de la siguiente función ).
fuente
formato de fecha y hora mysql de una línea
fuente
Sin usar una variable:
Con el uso de una variable:
fuente
$yourDate
? ¿Qué agrega esta respuesta a las respuestas similares publicadas años antes?