Utilice el algoritmo "natural" para comparar dos cadenas (distingue entre mayúsculas y minúsculas):
<?phpecho strnatcmp("2¡Hola mundo!","10¡Hola mundo!");echo "<br>";echo strnatcmp("10¡Hola mundo!","2¡Hola mundo!");?>La función strnatcmp() utiliza un algoritmo "natural" para comparar dos cadenas (distingue entre mayúsculas y minúsculas).
En aritmética natural el número 2 es menor que el número 10. En la clasificación por computadora, 10 es menor que 2 porque el primer número de 10 es menor que 2.
Nota: Esta función distingue entre mayúsculas y minúsculas.
strnatcmp( cadena1,cadena2 )
parámetro | describir |
---|---|
cadena1 | Requerido. Especifica la primera cadena a comparar. |
cuerda2 | Requerido. Especifica la segunda cadena que se va a comparar. |
Valor de retorno: | La función devuelve: 0 - si las dos cadenas son iguales <0 - si cadena1 es menor que cadena2 >0 - si cadena1 es mayor que cadena2 |
---|---|
Versión PHP: | 4+ |
La diferencia entre el algoritmo natural (strnatcmp) y el algoritmo de clasificación de cadenas por computadora convencional (strcmp):
<?php$arr1 = $arr2 = array("pic1","pic2","pic10","pic01","pic100","pic20","pic30","pic200");echo "Comparación de cadenas estándar" ."<br>";usort($arr1,"strcmp");print_r($arr1);echo "<br>";echo "Comparación de cadenas de orden natural"."<br>";usort($arr2,"strnatcmp");print_r($arr2);?>