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
lmpx.com only provides a reader for public news (NNTP) servers. It is not
affiliated with the servers or forums shown here and is not responsible for
the content of articles, which is written by their respective authors.