Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:12692 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 72188 invoked by uid 1010); 10 Sep 2004 03:23:36 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 71656 invoked from network); 10 Sep 2004 03:23:34 -0000 Received: from unknown (HELO took.shire) (68.122.184.4) by pb1.pair.com with SMTP; 10 Sep 2004 03:23:34 -0000 Received: (qmail 97768 invoked by uid 1001); 10 Sep 2004 03:45:21 -0000 Date: Fri, 10 Sep 2004 03:45:21 +0000 To: internals@lists.php.net Message-ID: <20040910034521.GI58353@bagend.shire> Mail-Followup-To: internals@lists.php.net Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.1i Subject: casting php5 objects From: curt@php.net (Curt Zirzow) In reference to bug #29029 (http://bugs.php.net/29029): Current casting object behaviour: int - not able to cast dobule - notice thrown, returns 1.0 null - will return null bool - returns 1 (from result of double) string - user __toString() if applicable or 'Object' Beyond the ridiculous idea of adding a __toInt(), __toDouble().. etc. What about the idea that casting int so that it returns the id of the object, and the double value returns the int casted as a double value. So: $o1 = new stdClass(); $o2 = new stdClass(); $o3 = new stdClass(); var_dump((int) $o1); /* 1 */ var_dump((double) $o2); /* 2.0 */ var_dump((int) $o3); /* 3 */ Otherwise, I'll just move this over as a documentation problem. Curt -- First, let me assure you that this is not one of those shady pyramid schemes you've been hearing about. No, sir. Our model is the trapezoid!