Hàm mb_str_pad() là một hàm mới được giới thiệu trong PHP 8.3. Nó được sử dụng để mở rộng một chuỗi Unicode theo chiều dài mong muốn bằng cách thêm các ký tự vào đầu, cuối hoặc cả hai phía của chuỗi. Điều này tương tự như hàm str_pad() nhưng mb_str_pad() được thiết kế để làm việc chính xác với các chuỗi đa byte, chẳng hạn như chuỗi chứa các ký tự Unicode.
Cú pháp của mb_str_pad
mb_str_pad(
string $input,
int $pad_length,
string $pad_string = " ",
int $pad_type = STR_PAD_RIGHT,
?string $encoding = null
): stringTham số
$input: Chuỗi mà bạn muốn thêm vào.$pad_length: Chiều dài của chuỗi sau khi được mở rộng.$pad_string: Chuỗi sẽ được sử dụng để thêm vào (mặc định là khoảng trắng" ").$pad_type: Cách mở rộng chuỗi. Có ba lựa chọn:STR_PAD_RIGHT(mặc định): Thêm vào cuối chuỗi.STR_PAD_LEFT: Thêm vào đầu chuỗi.STR_PAD_BOTH: Thêm vào cả hai đầu chuỗi.
$encoding: Bộ mã hóa ký tự (mặc định lànull, sẽ sử dụng encoding mặc định của PHP).
Ví dụ
- Mở rộng chuỗi với ký tự mặc định là khoảng trắng (STR_PAD_RIGHT)
$input = "Học";
$result = mb_str_pad($input, 10);
echo $result; // Kết quả: "Học " (chuỗi sau được mở rộng lên 10 ký tự)- Mở rộng chuỗi và thêm vào đầu (STR_PAD_LEFT)
$input = "Lập trình";
$result = mb_str_pad($input, 15, "-=", STR_PAD_LEFT);
echo $result; // Kết quả: "-=-=-Lập trình"- Mở rộng chuỗi cả hai đầu (STR_PAD_BOTH)
$input = "PHP";
$result = mb_str_pad($input, 9, "*", STR_PAD_BOTH);
echo $result; // Kết quả: "***PHP***"- Sử dụng
mb_str_pad()với chuỗi đa byte
$input = "Lập trình";
$result = mb_str_pad($input, 15, "•", STR_PAD_BOTH);
echo $result; // Kết quả: "••Lập trình•••"Lợi ích của mb_str_pad
- Hỗ trợ Unicode: Khác với
str_pad(),mb_str_pad()đảm bảo rằng các chuỗi Unicode nhiều byte được xử lý chính xác, tránh các lỗi liên quan đến độ dài chuỗi khi làm việc với các ký tự không thuộc bảng mã ASCII. - Đa dạng trong lựa chọn mã hóa: Bạn có thể chỉ định encoding để xử lý chính xác với các bộ mã khác nhau như UTF-8, ISO-8859-1,...
Kết luận
Hàm mb_str_pad() là một bổ sung tuyệt vời trong PHP 8.3, cung cấp khả năng mở rộng chuỗi an toàn cho các chuỗi đa byte, đặc biệt hữu ích khi làm việc với các ngôn ngữ như tiếng Nhật, tiếng Trung, hoặc tiếng Việt. Nếu bạn làm việc với các chuỗi Unicode, đây chắc chắn là hàm hữu ích cần xem xét.








