Example
Return a sorted array in ascending order:
html
<?php
$a=array("Dog","Cat","Horse","Bear","Zebra");
array_multisort($a);
print_r($a);
?>
Definition and Usage
The array_multisort() function returns a sorted array. You can assign one or more arrays. The function sorts the first array, and the other arrays follow, then, if two or more values are the same, it sorts the next array, and so on.
Note: String keys will be maintained, but numeric keys will be re-indexed, starting at 0 and increase by 1.
Note: You can assign the sortorder and the sorttype parameters after each array. If not specified, each array parameter uses the default values.
Syntax
text
array_multisort(array1, sortorder, sorttype, array2, array3, ...)
Parameter Values
| Parameter | Description |
|---|---|
| array1 | Required. Specifies an array |
| sortorder | Optional. Specifies the sorting order. Possible values: SORT_ASC - Default. Sort in ascending order (A-Z) SORT_DESC - Sort in descending order (Z-A) |
| sorttype | Optional. Specifies the type to use, when comparing elements. Possible values: SORT_REGULAR - Default. Compare elements normally (Standard ASCII) SORT_NUMERIC - Compare elements as numeric values SORT_STRING - Compare elements as string values SORT_LOCALE_STRING - Compare elements as string, based on the current locale (can be changed using setlocale()) SORT_NATURAL - Compare elements as strings using "natural ordering" like natsort() SORT_FLAG_CASE - Can be combined (bitwise OR) with SORT_STRING or SORT_NATURAL to sort strings case-insensitively |
| array2 | Optional. Specifies an array |
| array3 | Optional. Specifies an array |
Technical Details
| Return Value: | Returns TRUE on success or FALSE on failure |
|---|---|
| PHP Version: | 4+ |
More Examples
Example
Return a sorted array in ascending order:
html
<?php
$a1=array("Dog","Cat");
$a2=array("Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
Example
See how it sorts when two values are the same:
html
<?php
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
Example
Using sorting parameters:
html
<?php
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,SORT_ASC,$a2,SORT_DESC);
print_r($a1);
print_r($a2);
?>
Example
Merge two arrays and sort them as numbers, in descending order:
html
<?php
$a1=array(1,30,15,7,25);
$a2=array(4,30,20,41,66);
$num=array_merge($a1,$a2);
array_multisort($num,SORT_DESC,SORT_NUMERIC);
print_r($num);
?>