strnatcmp funksiyasi

strnatcmp funksiyasi ikki satrni belgilar tabiiy tartibini hisobga olgan holda solishtiradi. Oddiy solishtirishdan farqli o'laroq, bu funksiya satrlar ichidagi raqamlarni aniqlaydi va ularni raqam qiymati bo'yicha solishtiradi. Funksiya 0 qaytaradi agar satrlar bir xil bo'lsa, -1 agar birinchi satr ikkinchisidan kichik bo'lsa, va 1 dan katta raqam agar birinchi satr ikkinchisidan katta bo'lsa.

Sintaksis

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

Misol

Raqamli satrlarni oddiy usul va strnatcmp yordamida solishtirish:

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

Kod bajarish natijasi:

phpstrcmp result: 1
strnatcmp result: -1

Misol

Turli raqamli satrlarni solishtirish:

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

Kod bajarish natijasi:

php-1

Misol

Bir xil satrlarni solishtirish:

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

Kod bajarish natijasi:

php0

Shuningdek qarang

  • strcmp funksiyasi,
    binar-xavfsiz satr solishtirishni amalga oshiradi
  • strcasecmp funksiyasi,
    registrni hisobga olmagan holda satrlarni solishtiradi
  • natcasesort funksiyasi,
    registrni hisobga olmagan holda tabiiy tartibdan foydalangan holda massivni tartiblaydi