#5226 [Ana->Bgs]: arrayfields reorganized when using array_pop
| From: | sterling@php.net | Date: | Mon, 28 Oct 2002 01:07:56 +0000 |
| Subject: | #5226 [Ana->Bgs]: arrayfields reorganized when using array_pop | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-23485@lists.php.net to get a copy of this message | ||
ID: 5226
Updated by: sterling@php.net
Reported By: bretschneider@freestyling.de
-Status: Analyzed
+Status: Bogus
Bug Type: Feature/Change Request
Operating System: freebsd 3.1
PHP Version: 4.0.0 Release
New Comment:
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.
Previous Comments:
------------------------------------------------------------------------
[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?
------------------------------------------------------------------------
[2000-06-25 18:56:19] bretschneider@freestyling.de
<?
$A[1] = 'A';
$A[2] = 'B';
$A[3] = 'C';
$DUMP = array_pop($A);
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
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=5226&edit=1