Ottieni la differenza di orario in minuti in PHP

Minahil Noor 30 marzo 2021
  1. Usa la funzione date_diff() per ottenere la differenza di orario in minuti in PHP
  2. Usa formule matematiche per ottenere la differenza di orario in pochi minuti in PHP
Ottieni la differenza di orario in minuti in PHP

In questo articolo, introdurremo metodi per ottenere la differenza di tempo in minuti in PHP.

  • Utilizzo della funzione date_diff()
  • Utilizzando una formula matematica

Usa la funzione date_diff() per ottenere la differenza di orario in minuti in PHP

Useremo la funzione incorporata date_diff() per ottenere la differenza di orario in minuti.

Per questo, abbiamo bisogno di una data di inizio e di una data di fine. Calcoleremo la loro differenza di orario in minuti utilizzando la funzione date_diff(). La sintassi corretta per utilizzare questa funzione è la seguente.

date_diff($DateTimeObject1, $DateTimeObject2);

La funzione incorporata date_diff() ha due parametri. I dettagli dei suoi parametri sono i seguenti

Parametri Descrizione
$DateTimeObject1 obbligatorio È un oggetto DateTime. Rappresenta la data di inizio.
$DateTimeObject2 obbligatorio È anche un oggetto DateTime, rappresenta la data di fine.

Questa funzione restituisce la differenza tra la data di inizio e la data di fine in caso di successo. Restituisce FALSE in caso di errore.

Il programma sotto mostra come possiamo usare la funzione date_diff() per ottenere la differenza di orario in minuti.

<?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 funzione date_diff() ha restituito un oggetto che rappresenta la differenza tra due date.

Produzione:

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

Ora troveremo la differenza tra il tempo.

<?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';
?>

Produzione:

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

Usa formule matematiche per ottenere la differenza di orario in pochi minuti in PHP

In PHP, possiamo anche utilizzare diverse formule matematiche per ottenere la differenza di tempo in minuti. Il programma che ottiene la differenza di orario in minuti è il seguente:

<?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.");
?>

Produzione:

The difference in minutes is: 21 minutes

Possiamo anche trovare la differenza di orario in minuti utilizzando il seguente metodo.

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

Produzione:

The difference in minutes is 75 minutes.