完成此操作的最佳方法是什么?获取数组的前N个元素?
139
A
回答
248
使用array_slice()更快
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 0, 3); // returns "a", "b", and "c"
为例
只有一个小问题
如果数组索引是有意义的你,记得array_slice
将重置并重新排序数字数组索引。您需要将preserve_keys
标志设置为true
以避免这种情况。 (第4个参数,自5.0.2起可用)。
例子:
$output = array_slice($input, 2, 3, true);
输出:
array([3]=>'c', [4]=>'d', [5]=>'e');
+12
哇,3年编辑:)干得好。 – webnoob 2014-01-27 22:05:49
11
在当前顺序?我会说array_slice()。因为它是一个内置的功能,它会比通过数组循环,同时保持递增指数的跟踪,直到N.
21
0
array_slice()是尝试最好的事情,以下是例子:
<?php
$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 2); // returns "c", "d", and "e"
$output = array_slice($input, -2, 1); // returns "d"
$output = array_slice($input, 0, 3); // returns "a", "b", and "c"
// note the differences in the array keys
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>
相关问题
- 1. 获取std :: list的前N个元素?
- 2. 如何从数组中读取前n个元素
- 3. PHP获取前数组元素知道目前的数组键
- 4. 获取数组中的每个n元素
- 5. 获取jQuery中每个父项的前n个元素
- 6. 如何使用LinQ获取列表的前N个元素?
- 7. 获取特定元素(N,)
- 8. 使用BeautifulSoup获取第n个元素
- 9. 只保留PHP中数组的前N个元素?
- 10. 对数组的前n个元素进行迭代
- 11. 逐组获取最后的n个元素?
- 12. 在动态数组的前N个元素中查找最大元素
- 13. 获取数组元素的索引比O(n)更快
- 14. 获取元素相对于第n个父元素的位置
- 15. 获取从“string_to_array()”函数返回的数组的第N个元素
- 16. xsl获取元素数组
- 17. PHP:获取数组元素
- 18. 从数组中获取单个元素
- 19. Javascript 2D数组获取每个元素
- 20. PHP获取第一个数组元素
- 21. 如何从mongodb数组中删除前n个元素?
- 22. 从数组中选择n个元素
- 23. 获取前一个元素的高度
- 24. 获取QStringList的前一个元素
- 25. 获取Perl数组的最后N个元素的最佳方式是什么?
- 26. 跳过JQuery中的前N个元素
- 27. 循环Lua表的前n个元素
- 28. 如何获取第n个计数的NSArray元素?
- 29. 如何使用quicksort获取n个奇数元素的中值?
- 30. 获取数组元素的数量(JS)
如果你需要找到一个函数来做一些数组,请到这里:http://www.php.net/manual/en/function.array.php并查看函数。 – Galen 2010-09-15 17:27:47
而不是来过! – 2011-07-27 06:57:46