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 cookie và Chính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.