Hàm array_slice trong PHP là một hàm cho phép bạn cắt một phần của một mảng cha thành một một con có n phần tử từ vị trí x dựa trên các chỉ số cụ thể. Trong bài viết này, chúng ta sẽ tìm hiểu cách sử dụng hàm này trong xử lý mảng.
array_slice trong PHP – Cú pháp cơ bản
Hàm array_slice trong PHP có cú pháp cơ bản như sau.
array array_slice(array $array, int $offset, int $length = null, bool $preserve_keys = false);
Trong đó:
$array
: Mảng cha cần trích xuất.$offset
: Chỉ số bắt đầu(vị trí phần tử) mà chúng ta muốn cắt từ mảng cha.$length
: (Tùy chọn) Độ dài các phần tử muốn cắt ra(số lượng phần tử) tính từ vị trí$offset
. Nếu không có tham số$length
sẽ lấy hết đến cuối mảng.$preserve_keys
: (Tùy chọn) Xác định liệu các khóa(chỉ số phần tử) của mảng gốc có được dữ nguyên hay không, mặc định là false. ( 1 hoặc true – Dữ nguyên, 0 hoặc false đặt lại khóa).
Thế nào là dữ nguyên khóa, tức là ví dụ ta có mảng $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] khóa trong mảng sẽ là từ 0-9(Chỉ số mảng trong PHP bắt đầu từ $arr[0]). Ta cắt lấy mảng con từ vị trị thứ 3 đến vị trí thứ 7 được mảng con $subarr = [ 3, 4, 5, 6, 7].
- Không dữ nguyên khóa(
preserve_keys
-> false): Lúc này chỉ số mảng $subarr sẽ được đặt lại phần tử 3 có key mảng là 0, lần lượt cho đến phần tử 7 key mảng là 4. - Dữ nguyên khóa (
preserve_keys
-> true): Lúc này chỉ số mảng $subarr vẫn sẽ dữ nguyên ban đầu. Tức là phần tử 3 vẫn có key mảng là 2, lần lượt cho đến phần tử 7 có key 6.
>>XEM THÊM: Hàm array_unshift trong PHP – Chèn phần tử vào đầu mảng
Ví dụ sử dụng Hàm array_slice trong PHP
Hãy xem xét một số ví dụ cụ thể dưới đây để hiểu rõ hơn cách hoạt động hàm array_slice.
<?php
$fruits = ["apple", "banana", "cherry", "date", "elderberry"];
$subset = array_slice($fruits, 1, 3);
print_r($subset);
Ví dụ 1: Trích xuất mảng con không dữ nguyên khóa của mảng cha gốc.
<?php
$fruits = ["apple", "banana", "cherry", "date", "elderberry"];
$subset = array_slice($fruits, 1, 3);
print_r($subset);
Kết quả:
Array
(
[0] => banana
[1] => cherry
[2] => date
)
Ví dụ 2: Trích xuất mảng con dữ nguyên khóa của mảng gốc.
<?php
$fruits = ["apple", "banana", "cherry", "date", "elderberry"];
$subset = array_slice($fruits, 1, 3, true);
print_r($subset);
Kết quả:
Array
(
[1] => banana
[2]=> cherry
[3] => date
)
Qua 2 ví dụ đơn giản này bạn đã hiểu cách sử dụng của hàm array_slice, và thấy rõ sự khác biệt của tham số $preserve_keys.
>>XEM THÊM: Hàm date trong PHP: Hàm lấy và định dạng thời gian trong php
Kết luận
array_slice
là một hàm xây dựng sẵn trong PHP để làm việc với mảng, cụ thể là cắt ra một phần của mảng cha thành một mảng con mới. Bằng cách sử dụng hàm này, bạn có thể dễ dàng trích xuất các phần của mảng và xử lý chúng một cách hiệu quả mà không cần phải tự viết một hàm mới. Hy vọng rằng bài viết này đã giúp bạn hiểu cách sử dụng hàm này trong PHP.
Cảm ơn đã đọc hết bài viết! Nếu có bất kỳ câu hỏi, thắc mắc hoặc ý kiến đóng góp nào, để lại bình luận bên dưới chúng ta sẽ cùng nhau trao đổi nhé!
[XEM TẤT CẢ BÀI VIẾT CHUYÊN MỤC HƯỚNG DẪN PHP TẠI ĐÂY]
XEM THÊM
isset trong php – Hàm isset php kiểm tra tồn tại của một biến
Tách Chuỗi thành các thành phần trong PHP bằng hàm str_split
Hàm array_unshift trong PHP – Chèn phần tử vào đầu mảng
Hàm array_push trong PHP – Thêm một phần tử vào cuối mảng
Hàm file_put_contents() ghi file trong PHP để đặt log trên máy chủ