Thứ Sáu, 6 Tháng Mười Hai 2024
Trang chủPHP & MysqlPHPHàm array_slice trong PHP - Cắt mảng con từ vị trí x...

Hàm array_slice trong PHP – Cắt mảng con từ vị trí x trong mảng

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.

DANH SÁCH BÀI VIẾT
Hàm array_merge_recursive trong PHP - Hàm gộp mảng đa chiều
Hàm array_merge trong php - Hàm gộp hai mảng thành một mảng
Hàm array_slice trong PHP - Cắt mảng con từ vị trí x trong mảng
Hàm array_unshift trong PHP - Chèn phần tử vào đầu mảng
Hàm array_shift trong PHP - Lấy và loại bỏ phần tử đầu tiên 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ủ

0 0 Phiếu bình chọn
Xếp hạng bài viết
BÀI VIẾT LIÊN QUAN
Đăng ký nhận thông báo
Thông báo email khi
guest
0 Bình luận
Không thể gửi email
Phản hồi nội tuyến

NÊN ĐỌC THÊM

Bạn muốn tìm kiếm gì?

Dịch vụ code thuê

TUICOCACH.COM NHẬN ĐẶT TEXTLINK, BANNER, GP
0
Giáo sư! có thể ném gạch bên dưới nhé!x