PHP Array sort() Function (original) (raw)

Summary: in this tutorial, you’ll learn how to use the PHP array sort() function to sort elements of an array in ascending order.

Introduction to the PHP array sort() function #

The sort() function sorts the elements of an array in place in ascending order. The following shows the syntax of the sort() function:

sort(array &$array, int $flags = SORT_REGULAR): boolCode language: PHP (php)

The sort() function has two parameters:

The $flags parameter defaults to SORT_REGULAR. It means that the function will compare elements of the input array using comparison operators.

To combine multiple flags, you use the | character, for example, SORT_STRING | SORT_FLAG_CASE. The sort() function returns true on success or false on failure.

Sorting an array of numbers #

The following example uses the PHP sort() function to sort an array of three numbers:

`<?php

$numbers = [2, 1, 3]; sort($numbers);

print_r($numbers);`Code language: PHP (php)

Try it

Output:

Array ( [0] => 1 [1] => 2 [2] => 3 )Code language: PHP (php)

This example uses the SORT_REGULAR flag.

Sorting an array of strings #

The following example uses the sort() function to sort an array of strings alphabetically:

`<?php

$names = ['Bob', 'John', 'Alice']; sort($names, SORT_STRING);

print_r($names);`Code language: PHP (php)

Try it

Output:

Array ( [0] => Alice [1] => Bob [2] => John )Code language: PHP (php)

This example uses the SORT_STRING flag that compares array elements as strings.

Sorting an array of strings case-insensitively #

The following example uses the sort() function to sort an array of strings:

`<?php

$fruits = ['apple', 'Banana', 'orange']; sort($fruits);

print_r($fruits);`Code language: PHP (php)

Try it

Output:

Array ( [0] => Banana [1] => apple [2] => orange ) Code language: PHP (php)

To sort an array of strings case-insensitively, you combine the SORT_STRING flag with the SORT_FLAG_CASE flag like this:

`<?php

$fruits = ['apple', 'Banana', 'orange']; sort($fruits, SORT_FLAG_CASE | SORT_STRING);

print_r($fruits);`Code language: PHP (php)

Try it

Output:

Array ( [0] => apple [1] => Banana [2] => orange ) Code language: PHP (php)

Sorting an array of strings using “natural ordering” [#](#sorting-an-array-of-strings-using-natural-ordering "Anchor for Sorting an array of strings using "natural ordering"")

To sort an array of strings in the “natural ordering”, you combine the SORT_STRING and SORT_NATURAL flags. For example:

`<?php

$ranks = ['A-1', 'A-2', 'A-12', 'A-11']; sort($ranks, SORT_STRING | SORT_NATURAL);

print_r($ranks);`Code language: PHP (php)

Try it

Output:

Array ( [0] => A-1 [1] => A-2 [2] => A-11 [3] => A-12 )Code language: PHP (php)

PHP rsort() function #

The rsort() function is like the sort() function except that it sorts the elements of an array in descending order. The syntax of the rsort() function is as follows:

rsort(array &$array, int $flags = SORT_REGULAR): boolCode language: PHP (php)

For example, the following sorts the $ranks array’s elements using the natural ordering in descending order.

`<?php

$ranks = ['A-1', 'A-2', 'A-12', 'A-11']; rsort($ranks, SORT_STRING | SORT_NATURAL);

print_r($ranks);`Code language: PHP (php)

Try it

Output:

Array ( [0] => A-12 [1] => A-11 [2] => A-2 [3] => A-1 )Code language: PHP (php)

Summary #

Did you find this tutorial useful?