Cómo obtener la diferencia de tiempo en minutos en PHP

Minahil Noor 30 enero 2023
  1. Usa la función date_diff() para obtener la diferencia de tiempo en minutos en PHP
  2. Usar fórmulas matemáticas para obtener la diferencia de tiempo en minutos en PHP
Cómo obtener la diferencia de tiempo en minutos en PHP

En este artículo, introduciremos métodos para obtener la diferencia de tiempo en minutos en PHP.

  • Usando la función date_diff()
  • Usando una fórmula matemática

Usa la función date_diff() para obtener la diferencia de tiempo en minutos en PHP

Usaremos la función incorporada date_diff() para obtener la diferencia de tiempo en minutos.

Para ello, necesitamos una fecha de inicio y una fecha de finalización. Calcularemos su diferencia de tiempo en minutos usando la función date_diff(). La sintaxis correcta para usar esta función es la siguiente.

date_diff($DateTimeObject1, $DateTimeObject2);

La función incorporada date_diff() tiene dos parámetros. Los detalles de sus parámetros son los siguientes

Parámetros Descripción
$DateTimeObject1 obligatorio Es un objeto DateTime. Representa la fecha de inicio.
$DateTimeObject2 obligatorio También es un objeto DateTime, representa la fecha final.

Esta función devuelve la diferencia entre la fecha de inicio y la fecha de fin en el éxito. Devuelve FALSO en caso de fracaso.

El programa de abajo muestra cómo podemos usar la función date_diff() para obtener la diferencia de tiempo en minutos.

<?php 
$dateTimeObject1 = date_create('2019-06-16'); 
$dateTimeObject2 = date_create('2020-06-16'); 
  
$difference = date_diff($dateTimeObject1, $dateTimeObject2); 
echo ("The difference in days is:");
echo $difference->format('%R%a days');
echo "\n";
$minutes = $difference->days * 24 * 60;
$minutes += $difference->h * 60;
$minutes += $difference->i;
echo("The difference in minutes is:");
echo $minutes.' minutes';
?>

La función date_diff() ha devuelto un objeto que representa la diferencia entre dos fechas.

Resultado:

The difference in days is:+366 days
The difference in minutes is:527040 minutes

Ahora encontraremos la diferencia entre el tiempo.

<?php 
$dateTimeObject1 = date_create('17:13:00'); 
$dateTimeObject2 = date_create('12:13:00'); 
  
$difference = date_diff($dateTimeObject1, $dateTimeObject2); 
echo ("The difference in hours is:");
echo $difference->h;
echo "\n";
$minutes = $difference->days * 24 * 60;
$minutes += $difference->h * 60;
$minutes += $difference->i;
echo("The difference in minutes is:");
echo $minutes.' minutes';
?>

Resultado:

The difference in hours is:5
The difference in minutes is:300 minutes

Usar fórmulas matemáticas para obtener la diferencia de tiempo en minutos en PHP

En PHP, también podemos usar diferentes fórmulas matemáticas para obtener la diferencia de tiempo en minutos. El programa que obtiene la diferencia de tiempo en minutos es el siguiente:

<?php
$to_time = strtotime("10:42:00");
$from_time = strtotime("10:21:00");
$minutes = round(abs($to_time - $from_time) / 60,2);
echo("The difference in minutes is: $minutes minutes.");
?>

Resultado:

The difference in minutes is: 21 minutes

También podemos encontrar la diferencia de tiempo en minutos usando el siguiente método.

<?php
$start = strtotime('12:01:00');
$end = strtotime('13:16:00');
$minutes = ($end - $start) / 60;
echo "The difference in minutes is $minutes minutes.";
?>

Resultado:

The difference in minutes is 75 minutes.

Artículo relacionado - PHP Time