A strnatcmp függvény

A strnatcmp függvény két sztring összehasonlítását végzi a karakterek természetes rendezési sorrendjét figyelembe véve. A szokásos összehasonlítással ellentétben ez a függvény felismeri a sztringeken belüli számokat és azokat számérték szerint hasonlítja össze. A függvény 0-t ad vissza, ha a sztringek azonosak, -1-et ha az első sztring kisebb, mint a második, és 1-nél nagyobb számot, ha az első sztring nagyobb, mint a második.

Szintaxis

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

Példa

Sztringek összehasonlítása számokkal szokásos módon és strnatcmp segítségével:

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

A kód végrehajtásának eredménye:

phpstrcmp result: 1
strnatcmp result: -1

Példa

Különböző számokat tartalmazó sztringek összehasonlítása:

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

A kód végrehajtásának eredménye:

php-1

Példa

Azonos sztringek összehasonlítása:

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

A kód végrehajtásának eredménye:

php0

Lásd még

  • a strcmp függvényt,
    amely binárisan biztonságos sztring-összehasonlítást végez
  • a strcasecmp függvényt,
    amely sztringeket hasonlít össze kis- és nagybetűk megkülönböztetése nélkül
  • a natcasesort függvényt,
    amely tömböt rendez természetes rendezési sorrenddel, kis- és nagybetűk megkülönböztetése nélkül