ID: 45742 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Assigned +Status: Closed Bug Type: Scripting Engine problem Operating System: Linux 2.6.26-gentoo PHP Version: 5.3CVS-2008-08-07 (CVS) Assigned To: dmitry New Comment:
This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Previous Comments: ------------------------------------------------------------------------ [2008-08-07 09:54:24] [EMAIL PROTECTED] Description: ------------ If an array is used as a class property and the keys are constants, where two keys / constants have the same value, the second key is converted to a "strange" string. Reproduce code: --------------- <?php class Constants { // Needs to be equal const A = 1; const B = 1; } class ArrayProperty { public static $array = array( Constants::A => 23, Constants::B => 42, ); } var_dump( ArrayProperty::$array ); ?> Expected result: ---------------- Output PHP 5.2.7-dev (cli) (built: Aug 7 2008 11:12:42) (DEBUG) array(1) { [1]=> int(42) } Actual result: -------------- Output PHP 5.3.0alpha2-dev (cli) (built: Aug 6 2008 19:47:42) (DEBUG) array(2) { [1]=> int(23) ["Constants::"]=> int(42) } ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=45742&edit=1