I'm trying to write a script that will check if the current date/time is past the 05/15/2010 at 4PM
How can I use PHP's date() function to perform this check?
I'm trying to write a script that will check if the current date/time is past the 05/15/2010 at 4PM
How can I use PHP's date() function to perform this check?
There's also the DateTime class which implements a function for comparison operators.
Check PHP's
strtotime
-function to convert your set date/time to a timestamp: http://php.net/manual/en/function.strtotime.phpIf
strtotime
can't handle your date/time format correctly ("4:00PM" will probably work but not "at 4PM"), you'll need to use string-functions, e.g.substr
to parse/correct your format and retrieve your timestamp through another function, e.g.mktime
.Then compare the resulting timestamp with the current date/time (
if ($calulated_timestamp > time()) { /* date in the future */ }
) to see whether the set date/time is in the past or the future.I suggest to read the PHP-doc on date/time-functions and get back here with some of your source-code once you get stuck.
I had a problem with this date comparing and need some adjust
Since PHP >= 5.2.0 you can use the
DateTime
class as such:The string passed to the DateTime constructor is parsed according to these rules.
Note that it is also possible to use
time
andstrtotime
functions. See original answer.The dateTime object range is from about 292 billion years in the past to the same in the future. The timestamp function has a limit (starts from 1970 till 2038 if i remember correctly).