(PHP 5 >= 5.2.0, PHP 7, PHP 8)
ArrayObject::natcasesort — Ordena un array utilizando el ordenamiento natural sin distinción de mayúsculas y minúsculas
Este método es la versión insensible a la casilla de ArrayObject::natsort.
Este método implementa un algoritmo de ordenamiento que ordena las cadenas alfanuméricas de la misma forma en que lo haría un humano. Esto se describe como un ordenamiento natural.
Nota:
Si dos miembros se comparan como iguales, ellos mantendrán su orden original. Antes de PHP 8.0.0, su orden relativo en un array ordenado era indefinido.
Esta función no tiene parámetros.
No devuelve ningún valor.
Versión | Descripción |
---|---|
8.2.0 |
The return type is true now; previously, it was bool.
|
Ejemplo #1 Ejemplo con ArrayObject::natcasesort()
<?php
$array = array('IMG0.png', 'img12.png', 'img10.png', 'img2.png', 'img1.png', 'IMG3.png');
$arr1 = new ArrayObject($array);
$arr2 = clone $arr1;
$arr1->asort();
echo "Ordenamiento estándar\n";
var_dump($arr1);
$arr2->natcasesort();
echo "\nOrdenamiento natural\n";
var_dump($arr2);
?>
El resultado del ejemplo sería:
Ordenamiento estándar object(ArrayObject)#1 (1) { ["storage":"ArrayObject":private]=> array(6) { [0]=> string(8) "IMG0.png" [5]=> string(8) "IMG3.png" [4]=> string(8) "img1.png" [2]=> string(9) "img10.png" [1]=> string(9) "img12.png" [3]=> string(8) "img2.png" } } Ordenamiento natural object(ArrayObject)#2 (1) { ["storage":"ArrayObject":private]=> array(6) { [0]=> string(8) "IMG0.png" [4]=> string(8) "img1.png" [3]=> string(8) "img2.png" [5]=> string(8) "IMG3.png" [2]=> string(9) "img10.png" [1]=> string(9) "img12.png" } }
Para más información, ver la página de » comparación de strings en orden natural de Martin Pool.