Bug #12480 Updated: array_merge_recursive() clobbers existing numeric keys
| From: | andrei@php.net | Date: | Mon, 06 Aug 2001 16:51:58 +0000 |
| Subject: | Bug #12480 Updated: array_merge_recursive() clobbers existing numeric keys | ||
| References: | 1 | Groups: | php.dev |
| Request: | Send a blank email to php-dev+get-62313@lists.php.net to get a copy of this message | ||
ID: 12480
Updated by: andrei
Reported By: pgl@instinct.org
Old Status: Open
Status: Closed
Bug Type: Arrays related
Operating System: FreeBSD
PHP Version: 4.0.6
New Comment:
array_merge* functions are not meant to preserve numeric keys.
Previous Comments:
------------------------------------------------------------------------
[2001-07-31 05:14:43] pgl@instinct.org
if any of the keys of the first level of arrays are
numeric, using array_merge_recursive() will renumber
them to start at 0. this destroys keys that are used
to record id numbers, etc.
[mini:pgl]:~/public_html $ cat test.php
#!/usr/local/bin/php -q
<?
$b[a][4] = 1;
$a[3][4] = 2;
print_r(array_merge_recursive($a, $b));
?>
[mini:pgl]:~/public_html $ ./test.php
Array
(
[0] => Array
(
[4] => 2
)
[a] => Array
(
[4] => 1
)
)
------------------------------------------------------------------------
Edit this bug report at http://bugs.php.net/?id=12480&edit=1