Hàm strlen() dùng để lấy độ dài chuỗi. Nó trả về độ dài của chuỗi khi thành công. Nếu chuỗi trống, 0 được trả về
cú pháp
strlen(str)Thông số
str - Chuỗi mà chúng ta muốn độ dài
Trở lại
Hàm strlen() trả về độ dài của chuỗi khi thành công. Nếu chuỗi trống, 0 được trả về
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng hàm strlen() để lấy độ dài của một chuỗi trong PHP
Hàm strlen trong PHP đo độ dài của một chuỗi đã cho. Nó cực kỳ hữu ích để thực hiện kiểm tra và so sánh liên quan đến kiểu dữ liệu chuỗi. Nếu bạn dự định sử dụng PHP khá nhiều, cuối cùng bạn sẽ cần sử dụng chức năng này
Tôi khuyên bạn nên dành thời gian để tìm hiểu thêm về cách sử dụng chuỗi trong PHP nếu bạn chưa quen với ngôn ngữ này. Chúng được xử lý tương tự như hầu hết các ngôn ngữ lập trình khác, nhưng có một số điều bạn cần phải học
Hướng dẫn này giả định rằng bạn đang sử dụng PHP 8. 1 hoặc mới hơn. Các phiên bản PHP cũ hơn có thể hoạt động hơi khác so với những gì được mô tả trong hướng dẫn này. Do đó, chúng tôi khuyên bạn nên nâng cấp lên phiên bản PHP mới nhất để tương thích và bảo mật tối ưu
Cú pháp của hàm PHP strlen()
Cú pháp của hàm strlen rất đơn giản và sẽ chỉ chấp nhận một tham số duy nhất
strlen($string)$string là chuỗi bạn đang kiểm tra tổng độ dài. Loại dữ liệu dự kiến là một chuỗi và bất kỳ loại nào khác có thể dẫn đến lỗi hoặc kết quả không mong muốn
Giá trị trả về của hàm này sẽ là một số nguyên và chứa độ dài của chuỗi. Nếu chuỗi trống, hàm sẽ trả về 0
Ví dụ về Sử dụng Hàm strlen()
Chúng tôi sẽ sử dụng một số ví dụ để minh họa cách hoạt động của hàm strlen trong PHP. Đây là một chức năng đơn giản, nhưng có một số điều bạn cần cẩn thận, chẳng hạn như xử lý các ký tự UTF-8
Đếm một chuỗi cơ bản
Trong ví dụ bên dưới, chúng tôi kiểm tra hai chuỗi khác nhau và xuất độ dài của mỗi chuỗi bằng cách sử dụng tiếng vang. Hàm sẽ đếm tất cả các ký tự, kể cả khoảng trắng và ký tự đặc biệt
Điều quan trọng cần lưu ý là hàm strlen() sẽ trả về độ dài của chuỗi tính bằng byte. Vì vậy, nếu bạn có các ký tự là nhiều byte (Một số ký tự UTF-8), bạn có thể không nhận được số lượng chính xác mà bạn mong đợi. Nếu đó là trường hợp, bạn có thể sử dụng một
<?php $x = "Apple"; $y = "Apple Tree"; echo "Apple = " . strlen($x); echo "<br>"; echo "Apple Tree = " . strlen($y);Đầu ra của tập lệnh PHP ở bên dưới và cho thấy cách strlen đo hai chuỗi khác nhau được lưu trữ trong các biến x và y
Apple = 5 Apple Tree = 10Chuyển đổi ký tự UTF-8
Nếu chuỗi của bạn chứa các ký tự UTF-8, thì bạn có thể nhận được độ dài chuỗi không phù hợp với mong đợi của mình. Vấn đề này là do strlen đếm số byte, không phải ký tự. Các ký tự UTF-8 có thể nằm trong khoảng từ 1 đến 4 byte, có thể thay đổi khá nhiều tổng độ dài của chuỗi
Để khắc phục sự cố này, bạn có thể sử dụng mb_strlen() để đếm các ký tự chứ không phải byte hoặc bạn có thể chỉ cần giải mã chuỗi trước khi sử dụng nó với strlen($string)0
Trong ví dụ của chúng tôi bên dưới, chúng tôi có “xin chào” được dịch sang tiếng Hy Lạp “Χαίρετε“. Chúng tôi in ra ba phương pháp khác nhau để kiểm tra độ dài của chuỗi
<?php $x = "Χαίρετε"; echo "Χαίρετε = " . strlen($x); echo "<br>"; echo "UTF-8 Decode = " . strlen(utf8_decode($x)); echo "<br>"; echo "mb_strlen() = " . mb_strlen($x, 'utf8');Đầu ra bên dưới minh họa cách strlen có thể cung cấp cho bạn số đếm khác với những gì bạn có thể mong đợi. Bằng cách giải mã chuỗi UTF-8, chúng tôi có thể đếm chính xác hơn về số lượng ký tự. Ngoài ra, hàm mb_strlen() sẽ cung cấp cho chúng ta số chính xác
Sự khác biệt này chỉ có thể là do bạn đang mong đợi một số lượng ký tự nhất định và bạn đã quên tính đến các ký tự UTF-8 hoặc các ký tự khác được biểu thị bằng nhiều hơn một byte
Χαίρετε = 14 UTF-8 Decode = 7 mb_strlen() = 7Phần kết luận
Hướng dẫn này đã đưa bạn qua những kiến thức cơ bản về cách sử dụng hàm strlen trong PHP. Chúng tôi đã đề cập đến cách sử dụng cơ bản của hàm và cách bạn có thể xử lý các chuỗi chứa ký tự UTF-8. Đây là một chức năng cực kỳ hữu ích mà bạn có thể sẽ sử dụng khi xử lý các chuỗi trong PHP
Nếu bạn chưa quen với PHP hoặc muốn tìm hiểu thêm, tôi thực sự khuyên bạn nên xem một số hướng dẫn PHP khác của chúng tôi. Chúng tôi đề cập đến những kiến thức cơ bản như mảng, hàm, câu lệnh switch, câu lệnh if other, v.v.