Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:23920 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 3590 invoked by uid 1010); 4 Jun 2006 12:00:57 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 3574 invoked from network); 4 Jun 2006 12:00:57 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 4 Jun 2006 12:00:57 -0000 X-PHP-List-Original-Sender: helly@php.net X-Host-Fingerprint: 81.169.182.136 ajaxatwork.net Linux 2.4/2.6 Received: from ([81.169.182.136:60953] helo=strato.aixcept.de) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id F4/43-49656-97BC2844 for ; Sun, 04 Jun 2006 08:00:57 -0400 Received: from baumbart.mbo (dslb-084-063-007-047.pools.arcor-ip.net [84.63.7.47]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by strato.aixcept.de (Postfix) with ESMTP id D053A35C1E2; Sun, 4 Jun 2006 14:00:54 +0200 (CEST) Date: Sun, 4 Jun 2006 14:03:17 +0200 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <1853717276.20060604140317@marcus-boerger.de> To: Pierre Cc: internals@lists.php.net In-Reply-To: <20060604135241.3beacb32@pierre-u64> References: <795156743.20060603134212@marcus-boerger.de> <20060603143639.GF5355@desario.homelinux.net> <509342741.20060603183859@marcus-boerger.de> <7.0.1.0.2.20060603175211.02208a50@zend.com> <20060604030100.1093d2f9@pierre-u64> <7.0.1.0.2.20060603181129.0396fc18@zend.com> <44823B41.5000608@akbkhome.com> <44823C51.7040408@lerdorf.com> <64299052.20060604120852@marcus-boerger.de> <20060604135241.3beacb32@pierre-u64> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Missing __toString() part From: helly@php.net (Marcus Boerger) Hello Pierre, Sunday, June 4, 2006, 1:52:41 PM, you wrote: > Hello, >> Hello Rasmus, Andi, >> marcus@zaphod /usr/src/PHP_5_2 $ php -r 'var_dump(spl_object_hash(new >> stdClass));' string(32) "0bab1548e3b42acbcf1170617b5432ae" >> >> For PHP 5.2 we could think about adding a hash handler to the object >> handler table and provide the above as default implementation. That >> hash handler would then be called when an object is being used as an >> offset. Maybe later in PHP 6 we can also add an interface that allows >> to overload that hash implementation. (If someone really wants that). >> Yet anything the user can overload be it an interface or magic >> function (e.g. __hashOf) seems to be too much for now. > Do you mean to allow object as indices with this default > implementation? But this implementataion cannot be overloaded? I fail > to see the needs of such things in 5.x (or 6.x even with overload). > Adding another magic method __toHash is also not what I would like. > Adding a function hash_from_object() or spl_hash_from object() to ease > the generations of hashes is indeed a good idea. There is no impact in > the objects managements and people are free to use it or not (no magic > default behaviors). Hence i wrote "For PHP 5.2 we **could** think"...