CakeFest 2024: The Official CakePHP Conference

ArrayObject::natsort

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

ArrayObject::natsortTrie les éléments avec un tri naturel

Description

public ArrayObject::natsort(): true

Cette méthode implémente un algorithme de tri qui place les chaînes alphanumériques dans le même ordre que celui qu'un humain utiliserait, tout en conservant la corrélation entre les clé et les valeurs. Ceci porte le nom de tri naturel. Par exemple, le tri naturel se distingue du tri informatique, tel qu'utilisé dans ArrayObject::asort, comme illustré ci-dessous.

Note:

Si deux membres se comparent comme égaux, ils maintiennent leur ordre original. Antérieur à PHP 8.0.0, leur ordre relatif dans le tableau trié n'est pas défini.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Aucune valeur n'est retournée.

Historique

Version Description
8.2.0 Le type de retour est maintenant true, auparavant il était bool.

Exemples

Exemple #1 Exemple avec ArrayObject::natsort()

<?php
$array
= array("img12.png", "img10.png", "img2.png", "img1.png");

$arr1 = new ArrayObject($array);
$arr2 = clone $arr1;

$arr1->asort();
echo
"Tri standard\n";
print_r($arr1);

$arr2->natsort();
echo
"\nTri en ordre naturel\n";
print_r($arr2);
?>

L'exemple ci-dessus va afficher :

Tri standard
ArrayObject Object
(
    [storage:ArrayObject:private] => Array
        (
            [3] => img1.png
            [1] => img10.png
            [0] => img12.png
            [2] => img2.png
        )

)

Tri en ordre naturel
ArrayObject Object
(
    [storage:ArrayObject:private] => Array
        (
            [3] => img1.png
            [2] => img2.png
            [1] => img10.png
            [0] => img12.png
        )

)

Pour plus d'informations, voyez le site de Martin Pool » Natural Order String Comparison.

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top