Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:23939 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 89706 invoked by uid 1010); 4 Jun 2006 16:03:30 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 89691 invoked from network); 4 Jun 2006 16:03:29 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 4 Jun 2006 16:03:29 -0000 X-PHP-List-Original-Sender: andi@zend.com X-Host-Fingerprint: 80.74.107.235 mail.zend.com Linux 2.5 (sometimes 2.4) (4) Received: from ([80.74.107.235:50285] helo=mail.zend.com) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id E1/6D-49656-05403844 for ; Sun, 04 Jun 2006 12:03:28 -0400 Received: (qmail 13129 invoked from network); 4 Jun 2006 16:03:00 -0000 Received: from localhost (HELO ANDI-NOTEBOOK.zend.com) (127.0.0.1) by localhost with SMTP; 4 Jun 2006 16:03:00 -0000 Message-ID: <7.0.1.0.2.20060604085729.0343f788@zend.com> X-Mailer: QUALCOMM Windows Eudora Version 7.0.1.0 Date: Sun, 04 Jun 2006 09:03:17 -0700 To: Derick Rethans Cc: Marcus Boerger ,internals@lists.php.net In-Reply-To: References: <795156743.20060603134212@marcus-boerger.de> <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> <1853717276.20060604140317@marcus-boerger.de> <1912643046.20060604141822@marcus-boerger.de> <7.0.1.0.2.20060604071847.03b74850@zend.com> <1834492302.20060604165624@marcus-boerger.de> <7.0.1.0.2.20060604075725.03d77b20@zend.com> <1996647038.20060604170829@marcus-boerger.de> <7.0.1.0.2.20060604081244.03dcd938@zend.com> <334553601.20060604171820@marcus-boerger.de> <7.0.1.0.2.20060604083343.034abe88@zend.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed Subject: Re: [PHP-DEV] Missing __toString() part From: andi@zend.com (Andi Gutmans) Again, I don't think we should have a hash but a unique id which can be used as an array key and in other things. Difference. Hash implies that it's not unique, I'm talking about unique. So yes, I'd take the starting point of Marcus' proposal but: a) Make the value start with a letter so that this isn't autoconverted but taken as a literal string key. Again, something like "id=%p:%d" b) Not call it hash because I see this as a unique id and not as a hash value which is not unique necessarily. c) This should be something outside SPL and part of the engine. Question is again, whether it's explicit or implicit (back to the question I had earlier). Do you just want to add a function which returns this thing or do you want $arr[$obj] to automatically ask for it. These are valid questions and should be answered. Andi At 08:41 AM 6/4/2006, Derick Rethans wrote: >On Sun, 4 Jun 2006, Andi Gutmans wrote: > > > Yes, I realize that but it doesn't happen today and I don't think > we couldn't > > make this a rule (requiring extensions to have unique id's per classes). In > > any case, we can always make it the following string: > > "id=#unique id" > >And that is exactly what Marcus already suggested: > > char * hash; > int len = > spprintf(&hash,0,"%p:%d",Z_OBJ_HT_P(zobj),Z_OBJ_HANDLE_P(zobj)); > >regards, >Derick > >-- >Derick Rethans >http://derickrethans.nl | http://ez.no | http://xdebug.org