PHP如何截断数组

时间:2011-11-02 18:25:13

标签: php

如何以最有效的方式截断PHP数组?

我应该使用array_splice吗?

4 个答案:

答案 0 :(得分:20)

您可以使用本机函数删除数组元素:

凭借这些知识,使你自己的功能

function array_truncate(array $array, $left, $right) {
    $array = array_slice($array, $left, count($array) - $left);
    $array = array_slice($array, 0, count($array) - $right);
    return $array;
}

演示 - http://codepad.viper-7.com/JVAs0a

答案 1 :(得分:4)

是的,除非您想循环遍历数组并unset()不需要的元素。

答案 2 :(得分:2)

此功能应该有效

function truncateArray($truncateAt, $arr) {
    array_splice($arr, $truncateAt, (count($arr) - $truncateAt));
    return $arr;
}

答案 3 :(得分:0)

您可以使用以下功能之一:

function array_truncate(&$arr)
{
    while(count($arr) > 0) array_pop($arr);
}
// OR (faster)
function array_truncate2(&$arr)
{
    array_splice($arr, 0, count($arr));
}

用法:

$data2 = array("John" => "Doe", "Alice" => "Bob");
array_truncate($data2);
// OR
array_truncate2($data2);