Fonction strnatcasecmp() en PHP

Exemple

Comparer deux chaînes de caractères en utilisant un algorithme "naturel" (insensible à la casse) :

<?php
echo strnatcasecmp("2Hello world!","10Hello WORLD!");
echo "<br>";
echo strnatcasecmp("10Hello world!","2Hello WORLD!");
?>

Exemple de exécution

Définition et utilisation

La fonction strnatcasecmp() utilise un algorithme "naturel" pour comparer deux chaînes de caractères.

Dans l'algorithme naturel, le nombre 2 est inférieur au nombre 10. Dans le tri informatique, 10 est inférieur à 2, car le premier chiffre de 10 est inférieur à 2.

Commentaires :strnatcasecmp() est insensible à la casse.

Syntaxe

strnatcasecmp(string1,string2)
Paramètres Description
string1 Requis. Définir la première chaîne de caractères à comparer.
string2 Requis. Définir la deuxième chaîne de caractères à comparer.

Détails techniques

Retourne :

Cette fonction retourne :

  • 0 - Si les deux chaînes de caractères sont égales
  • <0 - Si string1 est inférieur à string2
  • >0 - Si string1 est supérieur à string2
Version PHP : 4+

Plus d'exemples

Exemple 1

Différence entre l'algorithme naturel (strnatcmp) et l'algorithme de tri des chaînes de caractères informatiques conventionnel (strcmp):

<?php
$arr1 = $arr2 = array("pic1","pic2","pic10","pic01","pic100","pic20","pic30","pic200");
echo "Comparaison de chaînes de caractères standard"."<br>";
usort($arr1,"strcmp");
print_r($arr1);
echo "<br>";
echo "Comparaison de chaînes d'ordre naturel"."<br>";
usort($arr2,"strnatcmp");
print_r($arr2);
?>

Exemple de exécution