3

このような配列があるとします

array ([apple] => 1, [dog]=>2, [cat]=>5, [bread]=>9, [shoes]=> 4)

配列の最初の 3 つの値を出力することはできますか? もしそうなら、どのように?何か案は?

4

3 に答える 3

14
$firstThreeElements = array_slice($array, 0, 3);

0 はオフセットで、3 は必要な要素の数です。

于 2012-07-26T02:35:44.207 に答える
9

多くの方法があります。

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));
于 2012-07-26T02:32:51.693 に答える
2

イテレータの使用:

$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";
}
于 2012-07-26T02:38:33.697 に答える