Definition
The array_multisort() function sort multiple arrays at once, or a multi-dimensional array by one or more dimensions. Associative or string keys will be preserved, but numeric keys will be re-indexed.
Syntax
array_multisort(array1, sortorder, sorttype, array2, array3, ...)
Parameters
Parameter | Description |
---|---|
array1 |
Required. Specifies an array. |
sortorder |
Optional. Possible values: SORT_ASC - Default. Sort in ascending order (A-Z); SORT_DESC - Sort in descending order (Z-A) |
sorttype |
Optional. 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. |
Example
<?php
// Example 1
$cities = array("New York", "Salt Lake", "Tokyo", "Panama");
array_multisort($cities);
print_r($cities);
echo "<br>";
echo "<br>";
// Example 2
$persons = array("Mark", "Jeff", "Mike");
$cities = array("Berlin", "London", "Munich");
array_multisort($persons, $cities);
print_r($persons);
echo "<br>";
print_r($cities);
echo "<br>";
echo "<br>";
// Example 3
$persons = array("Mark", "Jeff", "Mike");
$cities = array("Berlin", "London", "Munich");
array_multisort($persons, SORT_ASC, $cities, SORT_DESC);
print_r($persons);
echo "<br>";
print_r($cities);
echo "<br>";