(PHP 4, PHP 5)

sortSort an array


bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )

This function sorts an array. Elements will be arranged from lowest to highest when this function has completed.



The input array.


The optional second parameter sort_flags may be used to modify the sorting behavior using these values:

Sorting type flags:

  • SORT_REGULAR - compare items normally (don't change types)
  • SORT_NUMERIC - compare items numerically
  • SORT_STRING - compare items as strings
  • SORT_LOCALE_STRING - compare items as strings, based on the current locale. Added in PHP 4.4.0 and 5.0.2, it uses the locale, which can be changed using setlocale().
  • SORT_NATURAL - compare items as strings using "natural ordering" like natsort(). Added in PHP 5.4.0.
  • SORT_FLAG_CASE - can be combined (bitwise OR) with SORT_STRING or SORT_NATURAL to sort strings case-insensitively. Added in PHP 5.4.0.

Return Values

Returns TRUE on success or FALSE on failure.


Example #1 sort() example


= array("lemon""orange""banana""apple");
foreach (
$fruits as $key => $val) {
"fruits[" $key "] = " $val "\n";


The above example will output:

fruits[0] = apple
fruits[1] = banana
fruits[2] = lemon
fruits[3] = orange

The fruits have been sorted in alphabetical order.

Example #2 sort() example using case-insensitive natural ordering


= array(
foreach (
$fruits as $key => $val) {
"fruits[" $key "] = " $val "\n";


The above example will output:

fruits[0] = Orange1
fruits[1] = orange2
fruits[2] = Orange3
fruits[3] = orange20

The fruits have been sorted like natcasesort().


Note: This function assigns new keys to the elements in array. It will remove any existing keys that may have been assigned, rather than just reordering the keys.

Note: Like most PHP sorting functions, sort() uses an implementation of » Quicksort.


Be careful when sorting arrays with mixed types values because sort() can produce unpredictable results.

See Also