◐ Shell
clean mode source ↗

PHP: ArrayObject::natsort - Manual

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

ArrayObject::natsortSort entries using a "natural order" algorithm

Description

public function ArrayObject::natsort(): true

Note: If two members compare as equal, they retain their original order. Prior to PHP 8.0.0, their relative order in the sorted array was undefined.

Parameters

This function has no parameters.

Return Values

No value is returned.

Changelog

Version Description
8.2.0 The return type is true now; previously, it was bool.

Examples

Example #1 ArrayObject::natsort() example

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

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

$arr1->asort();
echo "Standard sorting\n";
var_dump($arr1);

$arr2->natsort();
echo "\nNatural order sorting\n";
var_dump($arr2);
?>

The above example will output:

Standard sorting
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"
  }
}

Natural order sorting
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"
  }
}

For more information see: Martin Pool's » Natural Order String Comparison page.

See Also

Found A Problem?

There are no user contributed notes for this page.