- floor: documentation ( source)
- date_default_timezone_set: documentation ( source)
- ceil: documentation ( source)
- date: documentation ( source)
- strtotime: documentation ( source)
<?php
date_default_timezone_set('Asia/Calcutta');
$end_date = "2014-09-09 12:03:10";
$now = date('Y-m-d H:i:s');
$diff = strtotime($now) - strtotime($end_date);
$Days = $diff/(60*60*24);
$fullDays = ($now > $end_date) ? floor($Days) : ceil($Days);
$Hours = ($diff-($fullDays*60*60*24))/(60*60);
$fullHours = ($now > $end_date) ? floor($Hours) : ceil($Hours);
$Minutes = ($diff-($fullDays*60*60*24)-($fullHours*60*60))/60;
$fullMinutes = ($now > $end_date) ? floor($Minutes) : ceil($Minutes);
echo "Difference is $fullDays days, $fullHours hours and $fullMinutes minutes.";