Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:37699 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 6855 invoked from network); 18 May 2008 11:20:34 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 18 May 2008 11:20:34 -0000 Authentication-Results: pb1.pair.com smtp.mail=helly@php.net; spf=unknown; sender-id=unknown Authentication-Results: pb1.pair.com header.from=helly@php.net; sender-id=unknown Received-SPF: unknown (pb1.pair.com: domain php.net does not designate 85.214.94.56 as permitted sender) X-PHP-List-Original-Sender: helly@php.net X-Host-Fingerprint: 85.214.94.56 aixcept.net Linux 2.6 Received: from [85.214.94.56] ([85.214.94.56:53680] helo=h1149922.serverkompetenz.net) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id D7/66-57662-10110384 for ; Sun, 18 May 2008 07:20:33 -0400 Received: from MBOERGER-ZRH.corp.google.com (71-170.78-83.cust.bluewin.ch [83.78.170.71]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by h1149922.serverkompetenz.net (Postfix) with ESMTP id 0E51D11F101; Sun, 18 May 2008 13:20:30 +0200 (CEST) Date: Sun, 18 May 2008 13:20:00 +0200 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <1284376279.20080518132000@marcus-boerger.de> To: Christian Schneider CC: Marcus Boerger , Stanislav Malyshev , In-Reply-To: <76FF1B4A-1CAB-407A-9E6D-41E8C1137FCB@cschneid.com> References: <48169695.9040803@omegavortex.net> <7dd2dc0b0804290817v3d8de030y1208a88f78c44411@mail.gmail.com> <862660524.20080506162159@marcus-boerger.de> <912CE6DE-22D0-43E6-BB6B-6154980050E5@procata.com> <1210101672.3952.4.camel@localhost> <489751132.20080506214551@marcus-boerger.de> <10845a340805070633q2316a598lc1a69f259c523341@mail.gmail.com> <92634160.20080512164700@marcus-boerger.de> <10845a340805120803k2587870bnf890ce44765f5e97@mail.gmail.com> <721653902.20080513155302@marcus-boerger.de> <4829A0C9.5050308@cschneid.com> <1629174644.20080514020633@marcus-boerger.de> <76FF1B4A-1CAB-407A-9E6D-41E8C1137FCB@cschneid.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Content-Transfer-Encoding: 8bit Subject: Re: [PHP-DEV] Class Properties in Interfaces? From: helly@php.net (Marcus Boerger) Hello Christian, Wednesday, May 14, 2008, 10:57:24 AM, you wrote: > Am 14.05.2008 um 02:06 schrieb Marcus Boerger: >>> So you are saying that >>> $o_Foo->bar = array(42); >>> is ok when the class "expects" a string but >>> unset($o_Foo->bar); >>> or (as as slight variation) >>> $o->Foo->bar = null; >>> is not? >> >> I Do not get the connection here? And since when can we 'expect' a >> string >> only for a property? > You stated that allowing unset() is a bug. I replied that unset() is > not different from setting the value to array(42) or null and should > be allowed. Not allowing unset() is the bug. Having unset delete the property would be the error. As long as the property still exists with value NULL all is fine. > Apropos 'expect': A programmer of a class can have some expectations > of what is stored in attributes, PHP does not enforce these > expectations (hence I put expect in quotes). And just to make it > clear: I want to keep it that way, I do not want PHP to become more > strict than it is. > So I completely agree with Stas here. > - Chris Best regards, Marcus