#5226 [Com]: arrayfields reorganized when using array_pop

From: Date: Tue, 11 Feb 2003 03:41:31 +0000
Subject: #5226 [Com]: arrayfields reorganized when using array_pop
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-32725@lists.php.net to get a copy of this message
ID: 5226 Comment by: gstrash@cyberstreet.com Reported By: bretschneider@freestyling.de Status: Bogus Bug Type: Feature/Change Request Operating System: freebsd 3.1 PHP Version: 4.0.0 Release New Comment: Thats kinda bs. for ($i=0; $i<=sizeof($A); $i++) { print "$i = ".$A[$i]."<br>\n"; } ?> returns: 0 = A 1 = B 2 = but should return 0 = 1 = A 2 = B i think you misunderstand what he is saying. the for loop he created to dump the array is adding the "2 = " what woudl be displyed in a var_dump or print_r would be Array( [0]=>A,[1]=>B) when it should be Array( [1]=>A,[2]=>B) since the original displays Array ( [1] => A [2] => B [3] => C ) Previous Comments: ------------------------------------------------------------------------ [2002-10-27 19:07:56] sterling@php.net Except that its not a feature request, its a bogus bug report... ;-) It imho shouldn't be changed in the first place, but it would also break bc so fully that it will never change. ------------------------------------------------------------------------ [2001-04-04 00:51:40] cnewbill@php.net oops, forgot feature request. -Chris ------------------------------------------------------------------------ [2001-04-04 00:49:25] cnewbill@php.net Reclassifying as a feature request, regardless of whether it happens anytime soon. :) -Chris spinn@spinnwebe.com adds... This is a repeat of 5226, but I couldn't add anything without a password, which I didn't have. In that bug, stas@cvs.php.net didn't understand the example that was given. What happens is this: if you have $a[5]="five"; $a[6]="six"; and then do array_pop($a), you now have $a[0]="five", not $a[5]="five", as I would expect. Despite not understanding the example, stas answered the question: that's the way the zend engine works. But you don't see that as a problem? ------------------------------------------------------------------------ [2000-06-28 10:20:19] stas@cvs.php.net Presently, all splice-derived functions reorder numeric keys. There's not much to do about it, since it's the way Zend Engine handles numeric hash keys. Changing it either way won't bring more consistent functionality, so in the meantime it is just as it is. ------------------------------------------------------------------------ [2000-06-25 19:01:02] stas@cvs.php.net AFAIU that's exactly what pop should do - pop element from array. Why should it insert empty element on top? ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/5226 -- Edit this bug report at http://bugs.php.net/?id=5226&edit=1

« previous php.bugs (#32725) next »