Funkcia strnatcmp
Funkcia strnatcmp vykonáva porovnanie dvoch reťazcov s prihliadnutím na prirodzené poradie znakov.
Na rozdiel od bežného porovnávania táto funkcia rozpozná čísla v reťazcoch a porovnáva ich podľa číselnej hodnoty.
Funkcia vráti 0 ak sú reťazce identické, číslo -1 ak je prvý reťazec menší ako druhý,
a číslo väčšie ako 1 ak je prvý reťazec väčší ako druhý.
Syntax
strnatcmp(string $str1, string $str2): int
Príklad
Porovnanie reťazcov s číslami obvyklým spôsobom a pomocou strnatcmp:
<?php
$res1 = strcmp("file2.txt", "file10.txt");
$res2 = strnatcmp("file2.txt", "file10.txt");
echo "strcmp result: " . $res1 . "\n";
echo "strnatcmp result: " . $res2;
?>
Výsledok vykonania kódu:
strcmp result: 1
strnatcmp result: -1
Príklad
Porovnanie reťazcov s rôznymi číslami:
<?php
$res = strnatcmp("image5.jpg", "image15.jpg");
echo $res;
?>
Výsledok vykonania kódu:
-1
Príklad
Porovnanie rovnakých reťazcov:
<?php
$res = strnatcmp("hello123", "hello123");
echo $res;
?>
Výsledok vykonania kódu:
0
Pozrite tiež
-
funkciu
strcmp,
ktorá vykonáva binárne bezpečné porovnanie reťazcov -
funkciu
strcasecmp,
ktorá porovnáva reťazce bez ohľadu na veľkosť písmen -
funkciu
natcasesort,
ktorá triedi pole pomocou prirodzeného poradia bez ohľadu na veľkosť písmen