Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> PHP

Hàm strnatcmp() trong PHP

Giới thiệu

Hàm strnatcmp() so sánh hai chuỗi bằng thuật toán "thứ tự tự nhiên" (natural order). Khác với so sánh thông thường, thuật toán này xử lý số trong chuỗi như con người mong đợi (ví dụ: "2" < "10", trong khi so sánh thông thường "2" > "10" vì so sánh ký tự).

Lưu ý: Hàm này phân biệt chữ hoa chữ thường.

Cú pháp

strnatcmp(string $str1, string $str2): int

Tham số

  • str1 - Chuỗi thứ nhất.
  • str2 - Chuỗi thứ hai.

Giá trị trả về

  • 0 - nếu hai chuỗi bằng nhau.
  • < 0 - nếu str1 nhỏ hơn str2.
  • > 0 - nếu str1 lớn hơn str2.

Ví dụ

Ví dụ 1: Phân biệt chữ hoa chữ thường

<?php
echo strnatcmp("Test", "TEST");
?>

Kết quả:

1

Ví dụ 2: So sánh số tự nhiên

<?php
echo strnatcmp("5Demo", "50DEMO");
echo "\n";
echo strnatcmp("50Demo", "5DEMO");
echo "\n";
echo strnatcmp("100Demo", "100Demo");
?>

Kết quả:

-1
1
0

Giải thích: "5" < "50" nên trả về -1; "50" > "5" nên trả về 1; hai chuỗi giống nhau trả về 0.