php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Request #52425 array_shift/array_pop: add parameter that tells how many to elements to pop
Submitted: 2010-07-24 08:07 UTC Modified: 2010-07-24 17:40 UTC
Votes:1
Avg. Score:3.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: planet36 at gmail dot com Assigned:
Status: Wont fix Package: Unknown/Other Function
PHP Version: 5.3.3 OS: Linux
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please — but make sure to vote on the bug!
Your email address:
MUST BE VALID
Solve the problem:
39 + 37 = ?
Subscribe to this entry?

 
 [2010-07-24 08:07 UTC] planet36 at gmail dot com
Description:
------------
Description:
It would be nice if functions array_pop and array_shift took a parameter that told how many elements to pop.

Example:
mixed array_pop ( array &$array , $num = 1 )
mixed array_shift ( array &$array , $num = 1 )

Test script:
---------------
function array_pop_mine(array &$array, $num)
{
	$removed = array();
	while ($num > 0)
	{
		//$removed[] = array_pop($array);
		array_unshift($removed, array_pop($array));
		--$num;
	}
	//return array_reverse($removed);
	return $removed;
}
$arr = array(3, 1, 4, 1, 5, 9);
print_r($arr);
$rem = array_pop_mine($arr, 3);
print_r($arr);
print_r($rem);

Actual result:
--------------
Array
(
    [0] => 3
    [1] => 1
    [2] => 4
    [3] => 1
    [4] => 5
    [5] => 9
)
Array
(
    [0] => 3
    [1] => 1
    [2] => 4
)
Array
(
    [0] => 1
    [1] => 5
    [2] => 9
)

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2010-07-24 17:40 UTC] dtajchreber@php.net
-Status: Open +Status: Wont fix
 [2010-07-24 17:40 UTC] dtajchreber@php.net
array_splice()
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 19 22:01:28 2024 UTC