Uzyskaj pierwsze N ​​elementów tablicy?


Odpowiedzi:


359

Użyj array_slice ()

To jest przykład z podręcznika PHP: array_slice

$input = array("a", "b", "c", "d", "e");
$output = array_slice($input, 0, 3);   // returns "a", "b", and "c"

Jest tylko mały problem

Jeśli indeksy tablic mają dla Ciebie znaczenie, pamiętaj, że array_slicezresetują i uporządkują indeksy tablic numerycznych . Potrzebujesz preserve_keysflagi, trueaby tego uniknąć. (Czwarty parametr, dostępny od 5.0.2).

Przykład:

$output = array_slice($input, 2, 3, true);

Wynik:

array([3]=>'c', [4]=>'d', [5]=>'e');


12

W bieżącej kolejności? Powiedziałbym array_slice () . Ponieważ jest to funkcja wbudowana, będzie on szybszy niż zapętlanie tablicy, jednocześnie śledząc indeks rosnący aż do N.


4

array_slice () najlepiej wypróbować, oto przykłady:

<?php
$input = array("a", "b", "c", "d", "e");

$output = array_slice($input, 2);      // returns "c", "d", and "e"
$output = array_slice($input, -2, 1);  // returns "d"
$output = array_slice($input, 0, 3);   // returns "a", "b", and "c"

// note the differences in the array keys
print_r(array_slice($input, 2, -1));
print_r(array_slice($input, 2, -1, true));
?>

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.