Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:8556 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 33376 invoked by uid 1010); 17 Mar 2004 12:16:20 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 33255 invoked from network); 17 Mar 2004 12:16:19 -0000 Received: from unknown (HELO lakemtao04.cox.net) (68.1.17.241) by pb1.pair.com with SMTP; 17 Mar 2004 12:16:19 -0000 Received: from velum.net ([68.98.128.109]) by lakemtao04.cox.net (InterMail vM.5.01.06.08 201-253-122-130-108-20031117) with ESMTP id <20040317121619.DPMF5813.lakemtao04.cox.net@velum.net>; Wed, 17 Mar 2004 07:16:19 -0500 Message-ID: <40584181.9030004@velum.net> Date: Wed, 17 Mar 2004 07:16:01 -0500 User-Agent: Mozilla Thunderbird 0.5 (Windows/20040207) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Andi Gutmans CC: Clemens Gutweiler , internals@lists.php.net References: <5.1.0.14.2.20040315080605.01732e80@127.0.0.1> <5.1.0.14.2.20040317131037.022fa238@127.0.0.1> In-Reply-To: <5.1.0.14.2.20040317131037.022fa238@127.0.0.1> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] RC1 of RC1 From: hans@velum.net (Hans Lellelid) Hi - Andi Gutmans wrote: > Only if you use E_STRICT. There was a long discussion about this on > internals@ a few weeks ago. > > At 11:57 AM 3/17/2004 +0100, Clemens Gutweiler wrote: > >> >> > >> interface person { >> function wakeup( $day, $time ); >> } >> >> class hugo implements person { >> function wakeup( $day ) { >> printf( "wake up on $day\n" ); >> } >> } >> >> $hugo = new hugo; >> $hugo->wakeup( 'monday' ); >> >> ?> >> >> Shouldn't this throw an fatal error because wakeup isn't complete >> implemented? I must have missed / mis-understood the final decision on that. I would have also expected that this code would still be raising E_FATAL. I thought that the decision to not enforce strict signatures was for class inheritance (becuase of common practice of overriding parent signatures in PHP4), but that interfaces would enforce signatures (but might allow for additional optional params in methods of implementing classes). Hans