ArrayObject::natsort

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

ArrayObject::natsort — Trie les Ă©lĂ©ments avec un tri naturel

Description

public function 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Ă©s 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";
var_dump($arr1);

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

L'exemple ci-dessus va afficher :

Tri standard
object(ArrayObject)#1 (1) {
  ["storage":"ArrayObject":private]=>
  array(4) {
    [3]=>
    string(8) "img1.png"
    [1]=>
    string(9) "img10.png"
    [0]=>
    string(9) "img12.png"
    [2]=>
    string(8) "img2.png"
  }
}

Tri en ordre naturel
object(ArrayObject)#2 (1) {
  ["storage":"ArrayObject":private]=>
  array(4) {
    [3]=>
    string(8) "img1.png"
    [2]=>
    string(8) "img2.png"
    [1]=>
    string(9) "img10.png"
    [0]=>
    string(9) "img12.png"
  }
}

Pour plus d'informations, voir 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.