(PHP 4, PHP 5, PHP 7)
strnatcmp — Comparación de strings utilizando un algoritmo de "orden natural"
$str1
, string $str2
) : intEsta función implementa un algoritmo de comparación que ordena strings alfanuméricos de la manera en que un humano lo haría, lo cual se describe como "orden natural". Tener en cuenta que esta comparación es sensible a mayúsculas y minúsculas.
str1
El primer string.
str2
El segundo string.
De forma similar a otras funciones de comparación, esta devuelve < 0 si
str1
es menor que str2
; >
0 si str1
es mayor que
str2
y 0 si son iguales.
Un ejemplo de la diferencia entre éste algoritmo y los algoritmos normales de clasificación del computador (usados en strcmp()), se puede ver a continuación
<?php
$arr1 = $arr2 = array("img12.png", "img10.png", "img2.png", "img1.png");
echo "Standard string comparison\n";
usort($arr1, "strcmp");
print_r($arr1);
echo "\nNatural order string comparison\n";
usort($arr2, "strnatcmp");
print_r($arr2);
?>
El resultado del ejemplo sería:
Standard string comparison Array ( [0] => img1.png [1] => img10.png [2] => img12.png [3] => img2.png ) Natural order string comparison Array ( [0] => img1.png [1] => img2.png [2] => img10.png [3] => img12.png )