Calcule la diferencia de fecha en PHP

Calcule la diferencia de fecha en PHP
La diferencia entre las dos fechas se puede calcular de múltiples maneras utilizando un script PHP. El valor de la fecha se puede generar por la fecha() función y el Fecha y hora clase de PHP. La diferencia de fecha se puede calcular utilizando la función incorporada de PHP o sin ninguna función incorporada. El date_diff () La función se usa para calcular la diferencia entre dos fechas cuando los valores de fecha del mismo formato se crean utilizando el date_create () función. El diff () El método se utiliza para calcular la diferencia entre dos fechas, que se crean utilizando la fecha y hora clase. En este tutorial se proporcionan diferentes formas de calcular la diferencia de fecha en PHP.

Calcule la diferencia de fecha basada en los valores de la marca de tiempo

La función strToTime () devuelve el valor de la marca de tiempo de la fecha proporcionada en el primer argumento de esta función. La forma de calcular la diferencia entre las fechas se ha mostrado en esta parte del tutorial:

Ejemplo 1: imprima la diferencia entre dos fechas basadas en la marca de tiempo
Cree un archivo PHP con el siguiente script para calcular la diferencia entre la fecha actual y una fecha particular. La función strTotime () se ha utilizado en el script para generar los valores de la marca de tiempo de ambas fechas, y el valor de sustracción de estos valores de marca de tiempo se ha convertido en días.

// Establecer la fecha actual
$ Today = date ('y-m-d');
// Asignar una fecha en formato 'Y-M-D'
$ futuredate = "2022-09-30";
// Calcule la diferencia de fecha basada en los valores de la marca de tiempo
$ diferencia = strTotime ($ futuredate) - strTotime ($ hoy);
// Calcula la diferencia en los días
$ Days = ABS ($ Difference/(60 * 60)/24);
// imprime la diferencia de fecha en los días
eco "

La diferencia entre ".$ hoy." y ".$ FUTUNDATE." es ".$ días." días.

";
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Calcule la diferencia de fecha utilizando date_diff () función

El date_diff () es una función incorporada de PHP para calcular la diferencia entre dos fechas. La sintaxis de esta función se proporciona a continuación:

Sintaxis

date_diff ($ objdate1, $ objdate2);

Esta función toma dos objetos de fecha como los valores de argumento obligatorio, y devuelve la diferencia entre estos objetos de fecha en el éxito o falso en la falla. El uso de esta función se ha mostrado a continuación.

Ejemplo 2: imprima la diferencia entre dos fechas usando la función date_diff ()
Cree un archivo PHP con el siguiente script para calcular la diferencia entre la fecha actual y una fecha particular que se creará utilizando la función date_create (). La función date_diff () se ha utilizado en el script para calcular la diferencia entre dos objetos de fecha. A continuación, el método format () se usó para imprimir la diferencia con el formato. El valor positivo será devuelto por la función date_diff () cuando la primera fecha es mayor que la segunda fecha. De lo contrario, el valor negativo se devolverá.

// Cree el objeto de la primera fecha que asignará la fecha actual
$ dateVal1 = date_create ();
// Cree el objeto de segunda fecha que asignará una fecha en particular
$ dateVal2 = date_create ('29 sep 2022 ');
// Calcule el intervalo desde la primera fecha hasta la segunda fecha
$ iVivs = date_diff ($ dateVal2, $ dateVal1);
// imprime la salida
hacer eco "la diferencia de ".$ DateVal1-> Format ('D-M-Y')."-".$ DateVal2-> Format ('D-M-Y') . " es ". $ ival-> format ('%r%a días')."
";
// Calcule el intervalo desde la segunda fecha hasta la primera fecha
$ iVivs = date_diff ($ dateVal1, $ dateVal2);
// imprime la salida
hacer eco "la diferencia de ".$ DateVal2-> Format ('D-M-Y')."-".$ DateVal1-> Format ('D-M-Y') . " es ". $ ival-> format ('%r%a días')."
";
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Calcule la diferencia de fecha utilizando la clase DateTime

El método diff () de la clase DateTime es otra forma de calcular la diferencia entre dos objetos de fecha. El uso de este método se ha mostrado aquí.

Ejemplo 3: Imprima la diferencia entre dos fechas utilizando el método Format () de la clase DateTime
Cree un archivo PHP con el siguiente script que calculará la diferencia entre dos fechas que se creará utilizando la clase DateTime. El método diff () de esta clase se ha utilizado en el script para calcular la diferencia entre dos objetos de fecha. El método de formato () de esta clase se ha utilizado para imprimir la diferencia entre las fechas con el formato.

// Crear el objeto de la primera fecha
$ dateVal1 = new DateTime ('30 de diciembre de 2022 ');
// Crear el objeto de la segunda fecha
$ dateVal2 = new DateTime ('2022-10-30');
// Calcular la diferencia
$ iVal = $ dateVal2-> Diff ($ dateVal1);
// Imprima el valor de diferencia
eco "

La diferencia de fecha es ". $ ival-> formato ('%y años.').",".$ ival-> format ('%m meses').", y ".$ ival-> formato ('%d días.'). "

";
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Ejemplo 4: Imprima la diferencia entre dos fechas sin usar el método Format () de la clase DateTime
Cree un archivo PHP con el siguiente script que calculará la diferencia entre dos fechas que se creará utilizando la clase DateTime. El método diff () de esta clase se ha utilizado en el script para calcular la diferencia entre dos objetos de fecha. Los valores formateados de año, mes y día se imprimirán utilizando las propiedades del objeto de intervalo nombrado $ ival.

// Crear el objeto de la primera fecha
$ dateVal1 = new DateTime ('5 de noviembre 2022');
// Crear el objeto de la segunda fecha
$ dateVal2 = new DateTime ('2022-10-31');
// Calcular la diferencia
$ iVal = $ dateVal2-> Diff ($ dateVal1);
// Imprima el valor de diferencia
eco "

La diferencia de fecha es ". $ ival-> y.' años, '.$ ival-> m.' meses, '.$ ival-> d.' días'. "

";
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Ejemplo 5: Calcule la edad en función de la fecha de nacimiento y la fecha actual
Cree un archivo PHP con el siguiente script para calcular la edad de una persona en función de la fecha y la fecha de nacimiento actuales utilizando la clase DateTime y el método Diff ():

// Crear el objeto de la primera fecha
$ birthdate = new DateTime ('16 de diciembre de 2006 ');
// Crear el objeto de la segunda fecha
$ currentDate = new DateTime ();
// Calcular la diferencia
$ IVIL = $ BirthDate-> Diff ($ CurrentDate);
// imprime la fecha de nacimiento
eco "

Tu fecha de nacimiento es ". $ birthdate-> format ('d m, y').".

";
// Imprima el valor de diferencia
eco "

Tu edad es ahora ". $ ival-> y.' años, '.$ ival-> m.' meses, '.$ ival-> d.' días.'. "

";
?>

La siguiente salida aparecerá después de ejecutar el script anterior:

Conclusión

Se requiere la diferencia entre las dos fechas para resolver diferentes problemas de programación. Se han mostrado diferentes formas de calcular la diferencia entre dos fechas en este tutorial utilizando múltiples ejemplos. Espero que este tutorial ayude a los usuarios de PHP a encontrar la diferencia entre dos fechas correctamente después de leer este tutorial.