Today I spent 4 hours trying to find bug in the code. I was so excited to know that the string "Date" is a callable type. It is so implicit but it's a fact (PHP 5.6.26):
% php -a
php > var_dump(is_callable("Date"));
new Date(); the class is NOT equal to
date(); the function,
date() is a callable function,
Date() is not callable,
only if you set up the magic
And as noted in commends before php functions are not case sensitive.
So you think you test the class with
is_callable(“Date”) === true
but you are testing the function with it.