Функција 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,
    која сортира низа со користење на природен редослед без разликување на големи и мали букви