PHP natsort() Function
Topic: PHP Array ReferencePrev|Next
Description
The natsort()
function sorts an array using a "natural order" algorithm.
The keys are preserved, i.e. the key-to-value mapping will remain unchanged by the sort operation.
The following table summarizes the technical details of this function.
Return Value: | Returns TRUE on success or FALSE on failure. |
---|---|
Changelog: | Since PHP 5.2.10+, zero padded numeric strings (e.g., '00004') now ignore the 0 padding. |
Version: | PHP 4+ |
Syntax
The basic syntax of the natsort()
function is given with:
The following example shows the natsort()
function in action.
Example
Run this code »<?php
// Sample array
$images = array("img5.png", "img10.png", "img2.png", "img1.png");
// Standard sorting
sort($images);
print_r($images);
// Natural order sorting
natsort($images);
print_r($images);
?>
Tip: The natsort()
function implements a sort algorithm that orders the alphanumeric strings in the way a human being would. This is described as a "natural ordering".
Parameters
The natsort()
function accepts the following parameters.
Parameter | Description |
---|---|
array | Required. Specifies the array to be sorted. |
More Examples
Here're some more examples showing how natsort()
function actually works:
The following example shows how negative numeric strings will be sorted in natural ordering.
Example
Run this code »<?php
// Sample array
$array = array("-5", "10", "-2", "0", "-10", "8", "1");
// Standard sorting
sort($array);
print_r($array);
// Natural order sorting
natsort($array);
print_r($array);
?>
The following example shows how zero padded numeric strings will be sorted in natural ordering.
Example
Run this code »<?php
// Sample array
$array = array("07", "8", "10", "007", "09", "011", "0");
// Standard sorting
sort($array);
print_r($array);
// Natural order sorting
natsort($array);
print_r($array);
?>