ID: 45742
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
-Status: Open
+Status: Assigned
Bug Type: Scripting Engine problem
Operating System: Linux 2.6.26-gentoo
PHP Version: 5.3CVS-2008-08-07 (CVS)
-Assigned To:
+Assigned To: dmitry
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