array(
(int) 0 => '3',
(int) 1 => '5',
(int) 2 => '9',
(int) 3 => '14',
(int) 4 => '16',
(int) 5 => '17',
(int) 6 => '18',
(int) 7 => '19',
(int) 8 => '20',
(int) 9 => '23',
(int) 10 => '24',
(int) 11 => '25',
(int) 12 => '26',
(int) 13 => '28',
(int) 14 => '30',
(int) 15 => '31',
(int) 16 => '32',
(int) 17 => '33',
(int) 18 => '34',
(int) 19 => '35',
(int) 20 => '36',
(int) 21 => '37',
(int) 22 => '38',
(int) 23 => '39',
(int) 24 => '40',
(int) 25 => '41')
我有一组数字,我想通过AJAX迭代。 假设我想显示前5个,然后偏移量为5.
我如何通过数组,这样我第一次需要它时,我得到[3,5,9,14,16],然后是第二次[17,18,19,20,23],等等。
我在想我需要一个能够输入原始数组的函数吗?
类似
function Something($array, $offset){
}
答案 0 :(得分:1)
您可以使用array_slice()
来提取数组的一部分:
$offset = 5;
$chunk_size = 5;
$chunk = array_slice($array, $offset, $chunk_size);
var_dump($chunk);
输出:
array(5) {
[0]=>
string(2) "17"
[1]=>
string(2) "18"
[2]=>
string(2) "19"
[3]=>
string(2) "20"
[4]=>
string(2) "23"
}
答案 1 :(得分:0)
假设您在每个Ajax调用中传输偏移量并且部分的长度始终为5,那么您可以使用array_slice
$array = array_slice($array, $offset, 5);
foreach( $array as $k => $v )
{
...
}