date('Y-m-d H:i:s') === date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s')));
// Always true?
While that statement will be true most of the time, it will not always be true because the left (date('Y-m-d H:i:s')
is evaluated after the right date('Y-m-d H:i:s')
, so if the code is run a nanosecond before the second digit is about to change, the two dates will have different second digits.
You can verify that these two statements are not always equal by running the code below, which will eventually print "False".
while(true) {
$x = (date('Y-m-d H:i:s') === date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s'))));
if(!$x) {
exit("False");
}
}
However, if you provide the same timestamp to each date
call, then the statements will always be equal
$time = strtotime(date('Y-m-d H:i:s'));
date('Y-m-d H:i:s',$time) === date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s',$time)));
//Always true