php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #10149 array_pop reorders array keys
Submitted: 2001-04-04 00:25 UTC Modified: 2001-04-04 01:36 UTC
From: spinn at spinnwebe dot com Assigned:
Status: Closed Package: Scripting Engine problem
PHP Version: 4.0.1pl2 OS: freebsd
Private report: No CVE-ID: None
 [2001-04-04 00:25 UTC] spinn at spinnwebe dot com
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?

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2001-04-04 00:49 UTC] cnewbill@php.net
Closing, duplicate of 5226.

-Chris
 [2001-04-04 01:36 UTC] spinn at spinnwebe dot com
I don't understand. I know it's a duplicate, but it wasn't fixed in 5226, either.

Doesn't this make the array_x functions useless? Or, worse than useless, really, because I have to figure out which ones work and which don't (since I see array_pop works as expected), and keep a list of which ones to avoid, since functions can't be redefined, and I don't have the option of fixing them locally.

Or, to put it another way:

$a != array_pop(array_push($a, 1))

Again: this doesn't seem like a problem to you?

 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 28 08:01:28 2024 UTC