ArrayObject::natsort
(PHP 5 >= 5.2.0, PHP 7)
ArrayObject::natsort — Sort entries using a "natural order" algorithm
Description
public ArrayObject::natsort ( ) : void
This method implements a sort algorithm that orders alphanumeric strings in the way a human being would while maintaining key/value associations. This is described as a "natural ordering". An example of the difference between this algorithm and the regular computer string sorting algorithms (used in ArrayObject::asort) method can be seen in the example below.
Parameters
This function has no parameters.
Return Values
No value is returned.
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"; print_r($arr1); $arr2->natsort(); echo "\nNatural order sorting\n"; print_r($arr2); ?>
The above example will output:
Standard sorting ArrayObject Object ( [3] => img1.png [1] => img10.png [0] => img12.png [2] => img2.png ) Natural order sorting ArrayObject Object ( [3] => img1.png [2] => img2.png [1] => img10.png [0] => img12.png )
For more information see: Martin Pool's » Natural Order String Comparison page.
See Also
- ArrayObject::asort() - Sort the entries by value
- ArrayObject::ksort() - Sort the entries by key
- ArrayObject::natcasesort() - Sort an array using a case insensitive "natural order" algorithm
- ArrayObject::uasort() - Sort the entries with a user-defined comparison function and maintain key association
- ArrayObject::uksort() - Sort the entries by keys using a user-defined comparison function
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/arrayobject.natsort.php