say i have a date which is
$future_time_ending = \"2012-09-21 12:12:22\"
How do i work out the number of minutes between the current time
One method:
$minutes = (strtotime("2012-09-21 12:12:22") - time()) / 60;
strtotime
converts the date to a Unix timestamp - the number of seconds since the Unix epoch. Subtract the current timestamp and you have the number of seconds between the current time and the future time. Divide by 60 and the result is in minutes.
If you don't know for certain the time you're comparing is in the future, take the absolute value to get a positive number:
$minutes = abs(strtotime("2012-09-21 12:12:22") - time()) / 60;
Just to be complete in my answer, there is a more elaborate OO approach available in PHP:
$time = new DateTime("2012-09-21 12:12:22");
$diff = $time->diff(new DateTime());
$minutes = ($diff->days * 24 * 60) +
($diff->h * 60) + $diff->i;
This is especially useful if the input time is from a time zone other than the server's.