Andrew Heebner wrote:
This is done by design, not by 'bugginess'.
For backwards compatibility, if the Zend Engine 2.0 cannot find
a __construct() function for a given class, it will search for
the old-style constructor function, by the name of the class.
in the exmaple it uses the 'old style'
__construct is the new method of defining a constructor, but
the 'bug' you suspect is not a bug. The parser will search
for a function of the same name in the class as the
constructor for backwards compatibility with Older scripts, etc...
But shouldn't __construct() be searched for and used
Perhaps i may be mistaken, but it seems logical to search for the old-style
constructor first in order to be backwards compatible with old-style
scripts. Putting __construct in old style classes would yield a classname
of '__construct', an ugly and unlikely name for a class. Seeing as A::A()
I was asking myself -- I had assumed that __construct() would be
searched for first. I was /am under the impression __construct() is a
special function that the engine wouldn't allow you to use in PHP5 in
any other context than its intended purpose.
I don't know what Zeev plans on doing with