假设我有一个看起来像这样的数组
array ([apple] => 1, [dog]=>2, [cat]=>5, [bread]=>9, [shoes]=> 4)
我可以打印数组的前 3 个值吗?如果是这样,怎么做?有任何想法吗?
$firstThreeElements = array_slice($array, 0, 3);
其中 0 是您的偏移量,3 是您想要的元素数量。
有很多方法。
list( $first, $second, $third) = $array;
echo $first . ' ' . $second . ' ' . $third;
或者:
echo array_shift( $array);
echo array_shift( $array);
echo array_shift( $array);
或者:
$i = 0;
foreach( $array as $el) {
if( $i >= 3) break;
echo $el;
$i++;
}
或者:
foreach( array_slice( $array, 0, 3) as $el) {
echo $el;
}
或者:
echo implode( ' ', array_slice( $array, 0, 3));
使用迭代器:
$array = ['apple' => 1, 'dog' => 2, 'cat' => 5, 'bread' => 9, 'shoes' => 4];
foreach (new LimitIterator(new ArrayIterator($array), 0, 3) as $key => $val)
{
echo "$key => $val\n";
}