RE: [PHP-DEV] Re: new construct

2003-02-25 Thread John Coggeshall

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 this, but perhaps an option
would be to issue a notice or warning if both A::A() and __construct()
exist in a single class A and call __construct() in those cases... 

Just a thought.

John
 
>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() would be 
>much nicer, i can see the logic behind parsing the old-style 
>first, rather than the new-style.
>
>That's just my two cents, feel free to correct me otherwise..
>
>~ Andrew Heebner
>
>>
>> >__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 prior to the 
>> old-style constructor? Intuitively it seems it should.
>>
>> John
>>
>
>
>
>-- 
>PHP Development Mailing List 
>To unsubscribe, visit: http://www.php.net/unsub.php
>
>


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DEV] Re: new construct

2003-02-25 Thread Andrew Heebner
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()
would be much nicer, i can see the logic behind parsing the old-style first,
rather than the new-style.

That's just my two cents, feel free to correct me otherwise..

~ Andrew Heebner

>
> >__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 prior to the
> old-style constructor? Intuitively it seems it should.
>
> John
>



-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php



RE: [PHP-DEV] Re: new construct

2003-02-25 Thread John Coggeshall

>__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 prior to the
old-style constructor? Intuitively it seems it should.

John


-- 
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP-DEV] Re: new construct

2003-02-25 Thread Hartmut Holzgraefe
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' constructor *although*
__construct() could have been found ...?
--
Six Offene Systeme GmbH http://www.six.de/
i.A. Hartmut Holzgraefe Email: [EMAIL PROTECTED]   Tel.: +49-711-99091-77
Sie finden uns auf der CeBIT in Halle 6/H44   http://www.six.de/cebit2003/

--
PHP Development Mailing List 
To unsubscribe, visit: http://www.php.net/unsub.php