Home > Article > Backend Development > How to sort values in an array using php
In PHP, there are many ways to sort the values in an array. In this article, we will cover some common sorting methods in PHP and provide sample code to help you better understand how to sort values in an array.
1. sort() function
sort() is one of PHP's built-in sorting functions. It can sort the values in the array in ascending order, that is, sort from small to large. The usage of the sort() function is as follows:
sort($array);
Among them, $array represents the array to be sorted.
The sample code is as follows:
$ages = array(20, 15, 30, 25, 18); sort($ages); print_r($ages);
The above code will output the following results on the screen:
Array ( [0] => 15 [1] => 18 [2] => 20 [3] => 25 [4] => 30 )
If you want to sort in descending order, you can use the rsort() function. The usage of the rsort() function is similar to the usage of the sort() function.
The sample code is as follows:
$ages = array(20, 15, 30, 25, 18); rsort($ages); print_r($ages);
The above code will output the following results on the screen:
Array ( [0] => 30 [1] => 25 [2] => 20 [3] => 18 [4] => 15 )
2. asort() function
asort() function You can sort the values in an array in ascending order, preserving the key names. In other words, after sorting, the relationship between key names and values remains unchanged. This is useful for situations where you need to look up a key name based on its value.
The usage of the asort() function is as follows:
asort($array);
Among them, $array represents the array to be sorted.
The sample code is as follows:
$ages = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); asort($ages); print_r($ages);
The above code will output the following results on the screen:
Array ( [John] => 15 [Jake] => 18 [Peter] => 20 [David] => 25 [Mary] => 30 )
If you want to sort in descending order, you can use the arsort() function.
The sample code is as follows:
$ages = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); arsort($ages); print_r($ages);
The above code will output the following results on the screen:
Array ( [Mary] => 30 [David] => 25 [Peter] => 20 [Jake] => 18 [John] => 15 )
3. ksort() function
ksort() function You can sort the values in an array in ascending order based on the key name. The usage of the ksort() function is as follows:
ksort($array);
Among them, $array represents the array to be sorted.
The sample code is as follows:
$age = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); ksort($age); print_r($age);
The above code will output the following results on the screen:
Array ( [David] => 25 [Jake] => 18 [John] => 15 [Mary] => 30 [Peter] => 20 )
If you want to sort in descending order, you can use the krsort() function.
The sample code is as follows:
$age = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); krsort($age); print_r($age);
The above code will output the following results on the screen:
Array ( [Peter] => 20 [Mary] => 30 [John] => 15 [Jake] => 18 [David] => 25 )
4. usort() function
If you need to customize To define sorting logic, you can use the usort() function. The usort() function allows you to define a callback function for comparing two values. This callback function will accept two parameters and return an integer less than, equal to, or greater than 0 to indicate the ordering relationship between the two values.
usort() function is used as follows:
usort($array, $callback);
Among them, $array represents the array to be sorted, and $callback represents the callback function used to compare two values.
The sample code is as follows:
function cmp($a, $b) { if ($a == $b) { return 0; } return ($a > $b) ? -1 : 1; } $ages = array(20, 15, 30, 25, 18); usort($ages, "cmp"); print_r($ages);
The above code will output the following results on the screen:
Array ( [0] => 30 [1] => 25 [2] => 20 [3] => 18 [4] => 15 )
In the above example, we defined a callback named "cmp" function. This function accepts two parameters ($a, $b) and returns an integer less than, equal to, or greater than 0. In this example, we use a callback function to sort the values in the array in descending order.
Summary
In PHP, there are many ways to sort the values in an array. You can sort in ascending and descending order using sort() and rsort() functions. You can also use the asort() and arsort() functions to sort an array based on values and preserve the key names. If you need to sort the values in an array based on key names, you can use the ksort() and krsort() functions. Finally, if you need custom sorting logic, you can use the usort() function.
No matter what type of sorting you need, there are corresponding functions and methods in PHP to help you complete the task. By learning the above content, you can more freely operate the values in the array when writing PHP code and improve your development efficiency.
The above is the detailed content of How to sort values in an array using php. For more information, please follow other related articles on the PHP Chinese website!