ID: 29986 Updated by: [EMAIL PROTECTED] Reported By: mitchel at sahertian dot com -Status: No Feedback +Status: Assigned Bug Type: Scripting Engine problem Operating System: Linux 2.6.8.1 x86 PHP Version: 5.0.1 -Assigned To: +Assigned To: johannes
Previous Comments: ------------------------------------------------------------------------ [2006-02-24 15:52:03] RQuadling at GMail dot com Windows XP SP2 running the latest PHP. PHP 5.1.3-dev (cli) (built: Feb 20 2006 00:29:25) Copyright (c) 1997-2006 The PHP Group Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies with Zend Extension Manager v1.0.10, Copyright (c) 2003-2006, by Zend Technologies with Zend Optimizer v3.0.0-Beta2, Copyright (c) 1998-2006, by Zend Technologies Reproduce code: --------------- <?php class just_constants { // These don't work. const BOOLEAN_CONSTANT = True; const NULL_CONSTANT = Null; // These do work. const STRING_CONSTANT = 'This is a string'; const INTEGER_CONSTANT = 1000; const FLOAT_CONSTANT = 3.1415926535897932384626433832795; } Reflection::export(new ReflectionClass('just_constants')); ?> Expected result: ---------------- Class [ <user> class just_constants ] { @@ D:\Data\PHP\Includes\ERT\rcerr.php 2-10 - Constants [5] { Constant [ boolean BOOLEAN_CONSTANT ] { } Constant [ null NULL_CONSTANT ] { } Constant [ string STRING_CONSTANT ] { } Constant [ integer INTEGER_CONSTANT ] { } Constant [ double FLOAT_CONSTANT ] { } } - Static properties [0] { } - Static methods [0] { } - Properties [0] { } - Methods [0] { } } Actual result: -------------- Class [ <user> class just_constants ] { @@ D:\Data\PHP\Includes\ERT\rcerr.php 2-10 - Constants [5] { Constant [ unknown BOOLEAN_CONSTANT ] { } Constant [ unknown NULL_CONSTANT ] { } Constant [ string STRING_CONSTANT ] { } Constant [ integer INTEGER_CONSTANT ] { } Constant [ double FLOAT_CONSTANT ] { } } - Static properties [0] { } - Static methods [0] { } - Properties [0] { } - Methods [0] { } } In zend_API.c (/* $Id: zend_API.c,v 1.347 2006/02/22 12:02:44 dmitry Exp $ */) Lines 217 to 250 - zend_zval_type_name() has the capability to return the 'boolean' and 'null' values. Though 'string' is shown as 'native string' in the source code and that change was made V1.304 17/08/2005 but has not been compiled maybe? Is the zend engine slow to update as compared to the main PHP code? Are there other changes not being made here? I did a binary search on all of the dlls and exes and no mention of 'native string'. At around byte 0x2728B0 in php5ts.dll the text for the return values from the zend_zval_type_name function are stored. ------------------------------------------------------------------------ [2004-10-20 01:00:05] php-bugs at lists dot php dot net No feedback was provided for this bug for over a week, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open". ------------------------------------------------------------------------ [2004-10-12 09:33:24] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5-latest.tar.gz For Windows: http://snaps.php.net/win32/php5-win32-latest.zip ------------------------------------------------------------------------ [2004-10-12 09:27:52] php at bobsilva dot com This is fixed in 5.1 CVS ------------------------------------------------------------------------ [2004-09-08 16:08:43] ante dot dfg at moj dot net Interestingly enough this example(btw there's an error at end of DEFINE - define("FOOBAR",0x0008): <- this should be ;) when copy paste and run dies with Fatal error: Trying to clone an uncloneable object of class ReflectionClass in c:\serverroot\test.php on line 11 but If I put a reference in $o=new ReflectionClass("MyClass"); making it $o=&new ReflectionClass("MyClass"); then I actualy get the message ("actual result") that Michael stated.... I'm using php 5.0.1 (release version) on XP Pro under Apache 1.3.31.... Hope this helps somehow... ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/29986 -- Edit this bug report at http://bugs.php.net/?id=29986&edit=1