|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2007-10-12 08:47 UTC] jonas at skubic dot se
Description:
------------
array_slice seems to be resetting the current array position *before* processing the offset parameter.
This makes it impossible to directly use expressions that use the array position for the offset parameter.
It would be mildly useful and less surprising if the parameters were evaluated before altering the array.
Reproduce code:
---------------
$a = range(0, 9);
next($a);
next($a);
$b = array_slice($a, key($a));
print_r($b);
Expected result:
----------------
Array
(
[0] => 2
[1] => 3
[2] => 4
[3] => 5
[4] => 6
[5] => 7
[6] => 8
[7] => 9
)
Actual result:
--------------
Array
(
[0] => 0
[1] => 1
[2] => 2
[3] => 3
[4] => 4
[5] => 5
[6] => 6
[7] => 7
[8] => 8
[9] => 9
)
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Dec 19 00:00:01 2025 UTC |
PHP 5.2.5-dev (cli) (built: Oct 13 2007 17:24:05) felipe@bl4ck:~/public_html$ php test.php Array ( [0] => 2 [1] => 3 [2] => 4 [3] => 5 [4] => 6 [5] => 7 [6] => 8 [7] => 9 )