diff --git a/functions/array.xml b/functions/array.xml
index d238823184..3f0040acce 100644
--- a/functions/array.xml
+++ b/functions/array.xml
@@ -217,6 +217,115 @@ array_merge ($array1, $array2);
+
+
+ array_multisort
+ Sort multiple or multi-dimensional arrays
+
+
+ Description
+
+
+ bool array_multisort
+ array ar1
+ mixed
+ arg
+
+
+ ...
+
+
+
+
+ array_multisort can be used to sort several
+ arrays at once or a multi-dimensional array according by one of
+ more dimensions. It maintains key association when sorting.
+
+
+
+ The input arrays are treated as columns of a table to be sorted
+ by rows - this resembles the functionality of SQL ORDER BY
+ clause. The first array is the primary one to sort by. The rows
+ (values) in that array that compare the same are sorted by the
+ next input array, and so on.
+
+
+
+ The argument structure of this function is a bit unusual, but
+ flexible. The very first argument has to be an
+ array. Subsequently, each argument can be either an array or a
+ sorting flag from the following lists.
+
+
+
+ Sorting order flags:
+
+
+ SORT_ASC - sort in ascending order
+
+
+ SORT_DESC - sort in descending order
+
+
+
+
+
+ Sorting type flags:
+
+
+ SORT_REGULAR - compare items normally
+
+
+ SORT_NUMERIC - compare items numerically
+
+
+ SORT_STRING - compare items as strings
+
+
+
+
+
+ No two sorting flags of the same type can be specified after each
+ array. The sortings flags specified after an array argument apply
+ only to that array - they are reset to default SORT_ASC and
+ SORT_REGULAR after before each new array argument.
+
+
+
+ Returns true on success, false on failure.
+
+
+
+ Sorting multiple arrays
+
+$ar1 = array("10", 100, 100, "a");
+$ar2 = array(1, 3, "2", 1);
+array_multisort($ar1, $ar2);
+
+
+ In this example, after sorting, the first array will contain 10,
+ "a", 100, 100. The second array will contain 1, 1, 2, "3". The
+ entries in the second array corresponding to the identical
+ entries in the first array (100 and 100) were sorted as well.
+
+
+
+
+ Sorting multi-dimensional array
+
+$ar = array(array("10", 100, 100, "a"), array(1, 3, "2", 1));
+array_multisort($ar[0], SORT_ASC, SORT_STRING, $ar[1], SORT_NUMERIC, SORT_DESC);
+
+
+ In this example, after sorting, the first array will contain 10,
+ 100, 100, "a" (it was sorted as strings in ascending order), and
+ the second one will contain 1, 3, "2", 1 (sorted as numbers, in
+ descending order).
+
+
+
+
+
array_pad