Lấy N phần tử đầu tiên của một mảng?


Câu trả lời:


358

Sử dụng mảng_slice ()

Đây là một ví dụ từ hướng dẫn sử dụng PHP: Array_slice

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

Chỉ có một vấn đề nhỏ

Nếu các chỉ số mảng có ý nghĩa đối với bạn, hãy nhớ rằng array_slicesẽ thiết lập lại và sắp xếp lại các số chỉ số mảng. Bạn cần preserve_keysđặt cờ trueđể tránh điều này. (Tham số thứ 4, khả dụng kể từ 5.0.2).

Thí dụ:

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

Đầu ra:

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


12

Theo thứ tự hiện tại? Tôi muốn nói mảng_slice () . Vì nó là một hàm dựng sẵn, nó sẽ nhanh hơn việc lặp qua mảng trong khi theo dõi chỉ số tăng dần cho đến khi N.


4

mảng_slice () là điều tốt nhất để thử, sau đây là các ví dụ:

<?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));
?>

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.