Hàm str_split() trong PHP
Trần Thị Vân
- 1231
- 01/08/2025
Chức năng của Hàm str_split() trong PHP
Hàm str_split() trong PHP dùng để chia số ký tự được chỉ định trong một chuỗi thành các phần tử trong mảng với độ dài ký tự bằng nhau, phần tử cuối còn bao nhiêu nhận bấy nhiêu, còn các phần tử phía trước nhận đều, thường dùng cho chuỗi các ký tự không dấu hoặc chuỗi số, ký tự khoảng trắng và có dấu đều tính là ký tự, hàm nhận vào một chuỗi và trả về một mảng mới.
Cú pháp của Hàm str_split() trong PHP
$mảng_mới = str_split("chuỗi_gốc",số_ký_tự_cần_chia);
chuỗi_gốc: Chuỗi gốc.
số_ký_tự_cần_chia: Số ký tự cần chia vô các phần tử trong mảng mới.
$mảng_mới: Kết quả trả về mảng mới.
Ví dụ Hàm str_split() trong PHP
<?php
print_r(str_split("WEBMOI",1)); // Kết quả: Array ( [0] => W [1] => E [2] => B [3] => M [4] => O [5] => I )
echo "<br>";
print_r(str_split("WEBMOI",2)); // Kết quả: Array ( [0] => WE [1] => BM [2] => OI )
echo "<br>";
print_r(str_split("WEBMOI",3)); // Kết quả: Array ( [0] => WEB [1] => MOI )
echo "<br>";
print_r(str_split("WEBMOI",4)); // Kết quả: Array ( [0] => WEBM [1] => OI )
echo "<br>";
print_r(str_split("0398259259",4)); // Kết quả: Array ( [0] => 0398 [1] => 2592 [2] => 59 )
echo "<br>";
print_r(str_split("WEb Mới",4)); // Kết quả: Array ( [0] => WEb [1] => Mớ [2] => i )
echo "<br>";
?>
Kết quả:
Array ( [0] => W [1] => E [2] => B [3] => M [4] => O [5] => I )
Array ( [0] => WE [1] => BM [2] => OI )
Array ( [0] => WEB [1] => MOI )
Array ( [0] => WEBM [1] => OI )
Array ( [0] => 0398 [1] => 2592 [2] => 59 )
Array ( [0] => WEb [1] => Mớ [2] => i )
Ứng dụng str_split() trong xử lý chuỗi PHP
str_split() hữu ích khi cần biến một chuỗi thành các phần tử riêng biệt để tiếp tục xử lý. Thay vì thao tác trực tiếp trên toàn bộ chuỗi, bạn có thể tách dữ liệu thành từng ký tự hoặc từng nhóm ký tự với độ dài xác định.
Chia chuỗi thành từng phần tử để xử lý dữ liệu
Một trường hợp thường gặp là cần duyệt qua từng ký tự của chuỗi để kiểm tra, biến đổi hoặc xây dựng dữ liệu mới. Khi đó, str_split() giúp chuyển chuỗi thành mảng, sau đó mỗi phần tử có thể được xử lý độc lập.
<?php
$text = "PHP";
$characters = str_split($text);
foreach ($characters as $character) {
echo $character . "<br>";
}
?>
Kết quả là mỗi ký tự được đưa vào một phần tử riêng. Cách làm này phù hợp với những thao tác đơn giản trên chuỗi chỉ sử dụng ký tự ASCII.
Kết hợp str_split() với các hàm xử lý mảng
Sau khi tách chuỗi, kết quả của str_split() là một mảng nên có thể kết hợp với nhiều hàm xử lý mảng của PHP. Chẳng hạn, bạn có thể đếm số phần tử, sắp xếp hoặc lọc dữ liệu trước khi sử dụng.
<?php
$text = "WebMoi";
$characters = str_split($text);
$characters = array_reverse($characters);
echo implode("", $characters);
?>
Trong ví dụ này, chuỗi được tách thành các phần tử, đảo thứ tự bằng array_reverse(), sau đó ghép lại thành chuỗi với implode(). Đây là cách kết hợp đơn giản nhưng hữu ích khi cần thực hiện nhiều bước xử lý trên dữ liệu.
Những trường hợp không nên dùng str_split()
str_split() không phải lựa chọn phù hợp cho mọi loại chuỗi. Đặc biệt, cần thận trọng với văn bản sử dụng UTF-8 như tiếng Việt, vì một ký tự có thể được biểu diễn bằng nhiều byte. Việc tách chuỗi theo byte có thể khiến ký tự bị chia sai.
Nếu dữ liệu chứa tiếng Việt hoặc các ký tự Unicode, nên cân nhắc những hàm hỗ trợ Unicode như mb_str_split() để giữ nguyên từng ký tự. Ngoài ra, nếu mục tiêu chỉ là tìm kiếm, thay thế hoặc lấy một phần chuỗi thì không nhất thiết phải chuyển toàn bộ chuỗi thành mảng.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Hàm str_split() trong PHP.
- 0 Bình luận
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *