mark rammmy
mark rammmy

Reputation: 1498

difference between the two datetimes in hours in php

i want to calculate the hour difference between the startdatetime and enddatetime in HOURS.

The date is in format MM/DD/YYYY and TIME in HH:MM:SS format

Below is the code :

$strt_date  = "03/24/2014";
$start_time = "23:14:57";
$end_date = "03/25/2014";
$end_time = "07:34:55";

$datetime1 = new DateTime($strt_date $start_time);
$datetime2 = new DateTime($end_date $end_time);
$diff = $datetime1->diff($datetime2);   
$diff1 =  $diff->format('%h');

Upvotes: 0

Views: 63

Answers (2)

SteveZ
SteveZ

Reputation: 37

$date1 = new DateTime($row['start']);
$date2 = new DateTime($row['end']);

$duration = $date2->diff($date1);

$hours = $duration->d*24 + $duration->h + $duration->i/60;
echo  $hours.'<br> '; 

Upvotes: 0

John Conde
John Conde

Reputation: 219794

Your parameters to your DateTime constructors are incorrect. If you want a space between the dates and times you need to explicitly add them.

$datetime1 = new DateTime("$strt_date $start_time");
$datetime2 = new DateTime("$end_date $end_time");

or

$datetime1 = new DateTime($strt_date . ' ' . $start_time);
$datetime2 = new DateTime($end_date . ' ' . $end_time);

Upvotes: 1

Related Questions