Funkcija strnatcmp
Funkcija strnatcmp atlieka dviejų eilučių palyginimą atsižvelgdama į natūralią simbolių tvarką.
Skirtingai nuo įprasto palyginimo, ši funkcija atpažįsta skaičius eilutėse ir lygina juos pagal skaitinę reikšmę.
Funkcija grąžina 0 jei eilutės identiškos, skaičių -1 jei pirmoji eilutė mažesnė už antrąją,
ir skaičių daugiau 1 jei pirmoji eilutė didesnė už antrąją.
Sintaksė
strnatcmp(string $str1, string $str2): int
Pavyzdys
Eilučių su skaičiais palyginimas įprastu būdu ir naudojant strnatcmp:
<?php
$res1 = strcmp("file2.txt", "file10.txt");
$res2 = strnatcmp("file2.txt", "file10.txt");
echo "strcmp result: " . $res1 . "\n";
echo "strnatcmp result: " . $res2;
?>
Kodo vykdymo rezultatas:
strcmp result: 1
strnatcmp result: -1
Pavyzdys
Eilučių su skirtingais skaičiais palyginimas:
<?php
$res = strnatcmp("image5.jpg", "image15.jpg");
echo $res;
?>
Kodo vykdymo rezultatas:
-1
Pavyzdys
Identžių eilučių palyginimas:
<?php
$res = strnatcmp("hello123", "hello123");
echo $res;
?>
Kodo vykdymo rezultatas:
0
Taip pat žiūrėkite
-
funkciją
strcmp,
kuri atlieka binarinį saugų eilučių palyginimą -
funkciją
strcasecmp,
kuri lygina eilutes neatsižvelgdama į raidžių dydį -
funkciją
natcasesort,
kuri rūšiuoja masyvą naudodama natūralią tvarką neatsižvelgdama į raidžių dydį