Функция 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 функциясын,
    ал массивди регистрди эске албаган табигый ирет менен иреттейт