Funkcija strnatcmp

Funkcija strnatcmp veic divu virkņu salīdzināšanu, ņemot vērā dabisko simbolu kārtību. Atšķirībā no parastā salīdzināšanas, šī funkcija atpazīst skaitļus virknēs un tos salīdzina pēc skaitliskās vērtības. Funkcija atgriež 0 ja virknes ir identiskas, skaitli -1 ja pirmā virkne ir mazāka par otro, un skaitli lielāku par 1 ja pirmā virkne ir lielāka par otro.

Sintakse

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

Piemērs

Virkņu ar skaitļiem salīdzināšana parastā veidā un ar strnatcmp:

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

Koda izpildes rezultāts:

phpstrcmp result: 1
strnatcmp result: -1

Piemērs

Virkņu ar dažādiem skaitļiem salīdzināšana:

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

Koda izpildes rezultāts:

php-1

Piemērs

Identisku virkņu salīdzināšana:

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

Koda izpildes rezultāts:

php0

Skatiet arī

  • funkciju strcmp,
    kas veic binarli drošu virkņu salīdzināšanu
  • funkciju strcasecmp,
    kas salīdzina virknes, neņemot vērā reģistru
  • funkciju natcasesort,
    kas kārto masīvu, izmantojot dabisko kārtību, neņemot vērā reģistru