Problem:
You have an array – a one-dimensional array, see the following example. You want to sort the values of array.
[php]
<?php
$languages = array(
"a" => "c",
"b" => "javascript",
"c" => "php",
"d" => "java",
"e" => "asp.net"
);
?>
[/php]
Solution:
We’ll see three different solutions to sort an array. There are differences in the resulting arrays. So, pick the right one you need.
Method 1: Using sort() function
sort() function sorts values of an array in ascending order – lowest to highest. See the example below-
[php]
<pre>
<?php
$languages = array(
"a" => "c",
"b" => "javascript",
"c" => "php",
"d" => "java",
"d" => "asp.net"
);
?>
</pre>
[/php]
[wpdm_file id=61]
Output: Array( [0] => asp.net [1] => c [2] => java [3] => javascript [4] => php )
Caution: Please note that the keys of the resulting array are rearranged. The keys in the resulting array are not same as before.
Recommendation:If don’t care about the keys, select this method.
Method 2: Using asort() function
asort() function also sorts values of an array in ascending order – lowest to highest. See the example below-
[php]
<pre>
<?php
$languages = array(
"a" => "c",
"b" => "javascript",
"d" => "php",
"e" => "java",
"f" => "asp.net"
);
asort($languages);
print_r($languages);
?>
</pre>
[/php]
[wpdm_file id=62]
Output:
Array ( [f] => asp.net [a] => c [e] => java [b] => javascript [d] => php )
Recommendation: If you need to preserve the keys in the resulting array, use this method. The keys in the resulting array are same as it was before.
Method 3: Using arsort() function
arsort() function also sorts values of an array in descending order – highest to lowest. See the example below-
[php]
<?php
$languages = array(
"a" => "c",
"b" => "javascript",
"d" => "php",
"e" => "java",
"f" => "asp.net"
);
arsort($languages);
print_r($languages);
?>
[/php]
Output:
Array ( [d] => php [b] => javascript [e] => java [a] => c [f] => asp.net )
Recommendation: To sort values in descending order, highest to lowest, select this method.