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.Syntax
array_multisort(array1,sorting order,sorting type,array2,array3...)
| Parameter | Description |
|---|---|
| array1 | Required. Specifies an array |
| sorting order | Optional. Specifies the sorting order. Possible values:
|
| sorting type | Optional. Specifies the type to use, when comparing elements. Possible values:
|
| array2 | Optional. Specifies an array |
| array3 | Optional. Specifies an array |
Tips and Notes
Tip: You can assign only one array to the array_multisort() function, or as many as you like.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 sorting order and the sorting type parameters after each array. If you don't, each array parameter uses the default values.
Example 1
<?php
$a1=array("Dog","Cat");
$a2=array("Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
$a1=array("Dog","Cat");
$a2=array("Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
Array ( [0] => Cat [1] => Dog )
Array ( [0] => Missy [1] => Fido )
Array ( [0] => Missy [1] => Fido )
Example 2
See how it sorts when two values are the same:
<?php
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
$a1=array("Dog","Dog","Cat");
$a2=array("Pluto","Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
Array ( [0] => Cat [1] => Dog [2] => Dog )
Array ( [0] => Missy [1] => Fido [2] => Pluto )
Array ( [0] => Missy [1] => Fido [2] => Pluto )
Example 3
With sorting parameters:
<?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);
?>
Array ( [0] => Cat [1] => Dog [2] => Dog )
Array ( [0] => Missy [1] => Pluto [2] => Fido )