#19930 [Opn->Bgs]: list() can't get values from associative arrays

From: Date: Wed, 16 Oct 2002 11:23:20 +0000
Subject: #19930 [Opn->Bgs]: list() can't get values from associative arrays
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-22562@lists.php.net to get a copy of this message
ID: 19930 Updated by: yohgaki@php.net Reported By: flying@dom.natm.ru -Status: Open +Status: Bogus Bug Type: Arrays related Operating System: Windows 2000 PHP Version: 4.2.3 New Comment: 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 list() requires numeric index. That's why pg|mysql_fetch_array(),etc returns both numeric and string indexed element. Previous Comments: ------------------------------------------------------------------------ [2002-10-16 05:02:42] flying@dom.natm.ru list() function can only operate with indexed arrays, but it must also work with associative arrays, otherwise it can cause confusions. Take a look at the following example: <?php $array1 = array('aaa','bbb','ccc'); $array2 = array('a'=>'aaa','b'=>'bbb','c'=>'ccc'); list($a,$b,$c) = $array1; echo "$a\n$b\n$c\n"; list($a,$b,$c) = $array2; echo "$a\n$b\n$c\n"; ?> First list() invocation works well but second one throws notices about undefined array indexes and don't work at all. As a workaround it is possible to use: list() = array_values($array); but it is not a way to go. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=19930&edit=1

« previous php.bugs (#22562) next »