11

I have a datetime field in my database that contains the following information:

2012-05-03 17:34:01

I want to check the difference between the datetime field and now:

$now = date("Y-m-d H:i:s");

I am attempting to work out how many days have passed between now and the time written to the database field.

How can I achieve this?

Jonathan Leffler
  • 730,956
  • 141
  • 904
  • 1,278
hairynuggets
  • 3,191
  • 22
  • 55
  • 90
  • 3
    Have you tried Googling `date difference php` ? –  May 04 '12 at 11:40
  • possible duplicate of [How to calculate the difference between two dates using PHP?](http://stackoverflow.com/questions/676824/how-to-calculate-the-difference-between-two-dates-using-php) – John Conde May 04 '12 at 11:40

4 Answers4

34

Here is the answer :)

$now = new DateTime();
$date = new DateTime("2012-05-03 17:34:01");

echo $date->diff($now)->format("%d days, %h hours and %i minutes");
Community
  • 1
  • 1
Max M
  • 393
  • 2
  • 6
6
$diff = abs(strtotime($date2) - strtotime($date1));
swati
  • 1,719
  • 10
  • 13
4

date_diff:

$datetime1 = new DateTime('2009-10-11');
$datetime2 = new DateTime("now");
$interval = $datetime1->diff($datetime2);
echo $interval->format('%R%a days');
T30
  • 11,422
  • 7
  • 53
  • 57
WojtekT
  • 4,735
  • 25
  • 37
0

Difference between now and datetime:

$delta = time() - strtotime('2023-03-22 13:43:59'); // in seconds
dima.rus
  • 183
  • 1
  • 8