Функција strnatcmp

Функција strnatcmp извршава упоређивање два стринга уз уважавање природног реда знакова. За разлику од уобичајеног поређења, ова функција препознаје бројеве унутар стрингова и упоређује их по нумеричкој вредности. Функција враћа 0 ако су стрингови идентични, број -1 ако је први стринг мањи од другог, и број већи од 1 ако је први стринг већи од другог.

Синтакса

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

Пример

Упоређивање стрингова са бројевима на уобичајен начин и уз помоћ strnatcmp:

php<?php
  $res1 = strcmp("file2.txt", "file10.txt");
  $res2 = strnatcmp("file2.txt", "file10.txt");
  
  echo "strcmp result: " . $res1 . "\n";
  echo "strnatcmp result: " . $res2;
?>

Резултат извршавања кода:

phpstrcmp result: 1
strnatcmp result: -1

Пример

Упоређивање стрингова са различитим бројевима:

php<?php
  $res = strnatcmp("image5.jpg", "image15.jpg");
  echo $res;
?>

Резултат извршавања кода:

php-1

Пример

Упоређивање истих стрингова:

php<?php
  $res = strnatcmp("hello123", "hello123");
  echo $res;
?>

Резултат извршавања кода:

php0

Погледајте такође

  • функцију strcmp,
    која извршава бинарно-сигурно упоређивање стрингова
  • функцију strcasecmp,
    која упоређује стрингове без обзира на величину слова
  • функцију natcasesort,
    која сортира низ користећи природни ред без обзира на величину слова