Answers:
array_combine(array_slice(array_keys($array), 0, 5), array_slice($array, 0, 5))
array_slice
返回数组的切片”。但是,我将编辑我的答案以使其更加清晰。
array_splice —删除数组的一部分,并用其他东西替换它:
$input = array(1, 2, 3, 4, 5, 6);
array_splice($input, 5); // $input is now array(1, 2, 3, 4, 5)
从PHP手册:
array array_splice ( array &$input , int $offset [, int $length = 0 [, mixed $replacement]])
如果省略length,则删除从offset到array末尾的所有内容。如果指定了length且为正,则将删除许多元素。如果指定了length且为负数,则删除部分的末尾将是数组末尾的元素个数。提示:如果还指定了替换,则要删除从偏移量到数组末尾的所有内容,请使用count($ input)作为length。
如果只想输出前5个元素,则应编写如下内容:
<?php
if (!empty ( $an_array ) ) {
$min = min ( count ( $an_array ), 5 );
$i = 0;
foreach ($value in $an_array) {
echo $value;
$i++;
if ($i == $min) break;
}
}
?>
如果要编写一个返回部分数组的函数,则应使用array_slice:
<?php
function GetElements( $an_array, $elements ) {
return array_slice( $an_array, 0, $elements );
}
?>