Funkcija strnatcmp
Funkcija strnatcmp izvede primerjavo dveh nizov z upoštevanjem naravnega vrstnega reda znakov.
Za razliko od običajne primerjave ta funkcija prepozna števila znotraj nizov in jih primerja po številski vrednosti.
Funkcija vrne 0, če so nizi identični, število -1, če je prvi niz manjši od drugega,
in število večje od 1, če je prvi niz večji od drugega.
Sintaksa
strnatcmp(string $str1, string $str2): int
Primer
Primerjava nizov s števili na običajen način in s pomočjo strnatcmp:
<?php
$res1 = strcmp("file2.txt", "file10.txt");
$res2 = strnatcmp("file2.txt", "file10.txt");
echo "strcmp result: " . $res1 . "\n";
echo "strnatcmp result: " . $res2;
?>
Rezultat izvajanja kode:
strcmp result: 1
strnatcmp result: -1
Primer
Primerjava nizov z različnimi števili:
<?php
$res = strnatcmp("image5.jpg", "image15.jpg");
echo $res;
?>
Rezultat izvajanja kode:
-1
Primer
Primerjava enakih nizov:
<?php
$res = strnatcmp("hello123", "hello123");
echo $res;
?>
Rezultat izvajanja kode:
0
Glejte tudi
-
funkcijo
strcmp,
ki izvede binarno varno primerjavo nizov -
funkcijo
strcasecmp,
ki primerja nize brez upoštevanja velikosti črk -
funkcijo
natcasesort,
ki razvrsti matriko z uporabo naravnega vrstnega reda brez upoštevanja velikosti črk