PHP comes with several built-in functions, specifically for sorting array elements such as alphabetically, ascending, descending order. Here we will explore some of the most commonly used ordering functions.

**sort()**and**rsort()**— For sorting indexed arrays**asort()**and**arsort()**— For sorting associative arrays by value**ksort()**and**krsort()**— For sorting associative arrays by key

#### Sorting Indexed Arrays in Ascending Order

The **sort()** function is used to sort the elements of the indexed array in ascending order.

**#example.php**

```
<?php
// Define array
$colors = array("Red", "Green", "Blue", "Yellow");
// Sorting and printing array
sort($colors);
print_r($colors);
?>
```

This **print_r()** statement gives the following output:

Array ( [0] => Blue [1] => Green [2] => Red [3] => Yellow ) |

Similarly, you can sort the numeric elements of the array in **ascending order.**

```
<?php
// Define array
$numbers = array(1, 2, 2.5, 4, 7, 10);
// Sorting and printing array
sort($numbers);
print_r($numbers);
?>
```

#### Sorting Indexed Arrays in Descending Order

The **rsort()** function is used for sorting the elements of the indexed array in descending order

```
<?php
// Define array
$colors = array("Red", "Green", "Blue", "Yellow");
// Sorting and printing array
rsort($colors);
print_r($colors);
?>
```

This **print_r()** statement gives the following output:

Array ( [0] => Yellow [1] => Red [2] => Green [3] => Blue ) |

#### Sorting Associative Arrays in Ascending Order By Value

The asort() function sorts the elements of an associative array in ascending order according to the value.

```
<?php
// Define array
$age = array("Rathorji"=>20, "Jhon"=>14, "Rakesh"=>45, "Pintoo"=>35);
// Sorting array by value and print
asort($age);
print_r($age);
?>
```

This **print_r()** statement gives the following output:

Array ( [Jhon] => 14 [Rathorji] => 20 [Pintoo] => 35 [Rakesh] => 45 ) |

#### Sorting Associative Arrays in Descending Order By Value

The **arsort()** function sorts the elements of an associative array in descending order according to the value.

```
<?php
// Define array
$age = array("Rathorji"=>20, "Jhon"=>14, "Rakesh"=>45, "Pintoo"=>35);
// Sorting array by value and print
arsort($age);
print_r($age);
?>
```

This **print_r()** statement gives the following output:

Array ( [Rakesh] => 45 [Pintoo] => 35 [Rathorji] => 20 [Jhon] => 14 ) |

#### Sorting Associative Arrays in Ascending Order By Key

The **ksort()** function sorts the elements of an associative array in ascending order by their keys.

```
<?php
// Define array
$age = array("Rathorji"=>20, "Jhon"=>14, "Rakesh"=>45, "Pintoo"=>35);
// Sorting array by value and print
ksort($age);
print_r($age);
?>
```

This **print_r()** statement gives the following output:

Array ( [Jhon] => 14 [Pintoo] => 35 [Rakesh] => 45 [Rathorji] => 20 ) |

#### Sorting Associative Arrays in Descending Order By Key

The **krsort()** function sorts the elements of an associative array in descending order by their keys.

```
<?php
// Define array
$age = array("Rathorji"=>20, "Jhon"=>14, "Rakesh"=>45, "Pintoo"=>35);
// Sorting array by value and print
krsort($age);
print_r($age);
?>
```

This **print_r()** statement gives the following output:

Array ( [Rathorji] => 20 [Rakesh] => 45 [Pintoo] => 35 [Jhon] => 14 ) |