Ֆունկցիա 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,
    որը դասավորում է զանգվածը՝ օգտագործելով բնական կարգը՝ անտեսելով ռեգիստրը