I'm trying to make something like this:
if (datetime - system date > 15 minutes) (false)
if (datetime - system date <= 15 minutes) (true)
But I'm totally lost. I don't know how to make this operation in PHP.
I'd like to see how I can pick that DateTime from my database and check if it's between the last 15 minutes of my server's time.
The type of database is MySQL.
Finally, I managed to do it thanks to Sammitch and the other ones, here i leave the snippet:
$now = time();
$target = strtotime($row[1]);
$diff = $now - $target;
// 15 minutes = 15*60 seconds = 900
if ($diff <= 900) {
$seconds = $diff;
} else {
$seconds = $diff;
}
Interval Between Different Dates In order to compare those two dates we use the method diff() of the first DateTime object with the second DateTime object as argument. The diff() method will return a new object of type DateInterval .
Use CONVERT() to Compare MySQL Timestamp Dates With the Date Parameter Only. The CONVERT() function can also compare the timestamp with the date only.
If your dates are already in MySQL you will want to do the comparison in the query because:
Below is the most efficient form. If there is an index on the date
column it will be used.
SELECT *
FROM table
WHERE date > DATE_SUB(NOW(), INTERVAL 15 MINUTE)
Docs: DATE_SUB()
If you need to do it in PHP:
$now = time();
$target = strtotime($date_from_db);
$diff = $now - $target;
if ( $diff > 900 ) {
// something
}
or, more succinctly:
if( time() - strtotime($date_from_db) > 900 ) {
// something
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With