Funkcja PHP strnatcmp()
Przykład
Używaj "naturalnego" algorytmu do porównywania dwóch ciągów znaków (rozróżniających wielkość liter):
<?php echo strnatcmp("2Hello world!","10Hello world!"); echo "<br>"; echo strnatcmp("10Hello world!","2Hello world!"); ?>
Definicja i użycie
Funkcja strnatcmp() używa "naturalnego" algorytmu do porównywania dwóch stringów.
W algorytmie naturalnym liczba 2 jest mniejsza niż liczba 10. W sortowaniu komputerowym liczba 10 jest mniejsza niż 2, ponieważ pierwszy znak liczby 10 jest mniejszy niż 2.
Komentarz:Funkcja jest wrażliwa na wielkość liter.
Gramatyka
strnatcmp(string1,string2)
Parametry | Opis |
---|---|
string1 | Wymagane. Określ pierwszy string do porównania. |
string2 | Wymagane. Określ drugi string do porównania. |
Szczegóły techniczne
Zwracana wartość: |
Ta funkcja zwraca:
|
Wersja PHP: | 4+ |
Więcej przykładów
Przykład 1
Różnica między algorytmem naturalnym (strnatcmp) a standardowym algorytmem sortowania stringów komputerowych (strcmp):
<?php $arr1 = $arr2 = array("pic1","pic2","pic10","pic01","pic100","pic20","pic30","pic200"); echo "Porównanie stringów w standardzie"."<br>"; usort($arr1,"strcmp"); print_r($arr1); echo "<br>"; echo "Porównanie stringów w naturalnym porządku"."<br>"; usort($arr2,"strnatcmp"); print_r($arr2); ?>