我有一个数组,我不知道数组中有多少元素。它可能是1,可能是500,但我需要元素的最大数量为21。
我知道我可以使用count()
检查长度,但如果太长时间怎么办呢?感谢。
答案 0 :(得分:4)
您可以使用SplFixedArray
这是管理固定大小数组的好方法.....
$array = new SplFixedArray(21);
示例
$array = SplFixedArray::fromArray($array);
$array->setSize(21);
答案 1 :(得分:2)
试试这段代码:
if(count($array) > 21){
$subarray = array_slice($array, 0, 21);
}
说明:
array array_slice ( array $array , int $offset [, int $length = NULL [, bool $preserve_keys = false ]] )
array_slice()返回由offset和length参数指定的数组数组中的元素序列。
答案 2 :(得分:1)
如果你的数组是$ arr那么:
$subArray = array_slice($arr,0,21);
答案 3 :(得分:1)
您可以使用array_slice来切断超出部分。
if(count($array) > 21){
$array = array_slice($array, 0, 21);
}
答案 4 :(得分:1)
您需要使用array_slice
,将偏移量指定为0,将长度指定为21。
if(count($your_array) > 21){
$new_array = array_slice($your_array, 0, 21);
}
答案 5 :(得分:1)
您可以使用array_splice删除超出您需要的元素