If you can do it like this:
function dateDifference($date_1 , $date_2 , $differenceFormat = '%h' )
{
$datetime1 = date_create($date_1);
$datetime2 = date_create($date_2);
$interval = date_diff($datetime1, $datetime2);
return $interval->format($differenceFormat);
}
Reference of the answer: Sunilkmcharde
echo dateDifference('1999-01-01 13:30:00', '1999-01-01 15:30:00'); // 2 horas
Online Example
Remembering that the parameter %h
is the difference in hours and the table below has how to configure this for other types of differences
+---------------------------------+-------------------------------+
| '%y Year %m Month %d Day' | 1 Year 3 Month 14 Days |
+---------------------------------+-------------------------------+
| '%m Month %d Day' | 3 Month 14 Day |
| '%d Day %h Hours' | 14 Day 11 Hours |
| '%d Day' | 14 Days |
| '%h Hours %i Minute %s Seconds' | 11 Hours 49 Minute 36 Seconds |
| '%i Minute %s Seconds' | 49 Minute 36 Seconds |
| '%h Hours' | 11 Hours |
| '%a Days' | 468 Days |
+---------------------------------+-------------------------------+
+--------------------+----------------------------------------------------------------------------------+--------------------------------------------------+--------+
| Caracter de format | Descrição | Exemplo de valores | |
+--------------------+----------------------------------------------------------------------------------+--------------------------------------------------+--------+
| % | % literal | % | |
| Y | Anos, em representação numérica, com dois dígitos e zero à esquerda | Years, numeric, at least 2 digits with leading 0 | 01, 03 |
| y | Anos, em representação numérica | 1, 3 | |
| M | Meses, em presentação numérica, com dois dígitos e zero à esquerda | 01, 03, 12 | |
| m | Meses, em presentação numérica | 1, 3, 12 | |
| D | Dias, em presentação numérica, com dois dígitos e zero à esquerda | 01, 03, 31 | |
| d | Dias, em presentação numérica | 1, 3, 31 | |
| a | Número total de dias resultante de DateTime::diff() ou (unknown), caso contrário | 4, 18, 8123 | |
| H | Horas, em presentação numérica, com dois dígitos e zero à esquerda | 01, 03, 23 | |
| h | Horas, em presentação numérica | 1, 3, 23 | |
| I | Minutos, em presentação numérica, com dois dígitos e zero à esquerda | 01, 03, 59 | |
| i | Minutos, em presentação numérica | 1, 3, 59 | |
| S | Segundos, em presentação numérica, com dois dígitos e zero à esquerda | 01, 03, 57 | |
| s | Segundos, em presentação numérica | 1, 3, 57 | |
| R | Sinal "-" quando negativo, "+" quando positivo | -, + | |
| r | Sinal "-" quando negativo, sem sinal quando positivo | -, | |
+--------------------+----------------------------------------------------------------------------------+--------------------------------------------------+--------+
Reference: Dateinterval::format
a time tip is a given but, date and time is information (analogously speaking), it also needs to contain the date and time for you to know the day and the amount of hours to release a resource.
– novic
truth I understood your question
– teste
Where the time comes for comparison?
– novic
of these variables $hours = date(’d-m-Y H:m:s', strtotime(date("d-m-Y H:m:s"). ' + 2 hours'); $horasAtual = date("d-m-Y H:m:s:s");
– teste
the more I was seeing this logic will not work with this
– teste
the idea is to show the field in the hours it is 2 hours more than the current time
– teste