ID: 27265 User updated by: jw at jwscripts dot com Reported By: jw at jwscripts dot com Status: Bogus Bug Type: Zend Engine 2 problem Operating System: * PHP Version: 5CVS-2004-02-15 New Comment:
> We are missing a class 'Reflection_Const'. IMO, you are not missing a Reflection_Const class, but a method isConst() in the Reflection_Property class. Previous Comments: ------------------------------------------------------------------------ [2004-02-16 15:04:18] [EMAIL PROTECTED] Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php We are missing a class \'Reflection_Const\'. ------------------------------------------------------------------------ [2004-02-15 15:00:46] jw at jwscripts dot com Description: ------------ When passing a constant to the constructor of the Reflection_Property class, an exception is thrown. You can work around this, e.g., by creating an instance of the Reflection_Object class instead, but this isn't very pretty. The same problem occurres when a constant with one or more uppercased characters is defined, e.g.: const $TEST = "foo"; Reproduce code: --------------- <? class Foo { const TEST = "foo"; // Fails too: static $TEST = "foo"; // Success : static $test = "foo"; } class Types extends Reflection_Property { public function __construct($object, $name) { parent::__construct($object, $name); } } $types = new Types("Foo", "TEST"); ?> Expected result: ---------------- No output Actual result: -------------- Fatal error: Uncaught exception 'reflection_exception' with message 'Property Foo::$TEST does not exist' in [...] Stack trace: #0 [...](13): Types->__construct() #1 {main} thrown in [...] on line [...] ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=27265&edit=1