如何以最有效的方式截断PHP数组?
我应该使用array_splice吗?
答案 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;
}
答案 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);