[Top]
|
Method sort()
- Method
sort
array sort(array(mixed) index, array(mixed) ... data)
- Description
Sort arrays destructively.
This function sorts the array index destructively. That means
that the array itself is changed and returned, no copy is created.
If extra arguments are given, they are supposed to be arrays of the
same size as index . Each of these arrays will be modified in the
same way as index . I.e. if index 3 is moved to position 0 in index
index 3 will be moved to position 0 in all the other arrays as well.
The sort order is as follows:
Integers and floats are sorted in ascending order.
Strings are sorted primarily on the first characters that are
different, and secondarily with shorter strings before longer.
Different characters are sorted in ascending order on the
character value. Thus the sort order is not locale dependent.
Arrays are sorted recursively on the first element. Empty
arrays are sorted before nonempty ones.
Multisets are sorted recursively on the first index. Empty
multisets are sorted before nonempty ones.
Objects are sorted in ascending order according to `<() ,
`>() and `==() .
Other types aren't reordered.
Different types are sorted in this order: Arrays, mappings,
multisets, objects, functions, programs, strings, types,
integers and floats. Note however that objects can control
their ordering wrt other types with `< , `> and `== ,
so this ordering of types only applies to objects without
those functions.
- Returns
The first argument is returned.
- Note
The sort is stable, i.e. elements that are compare-wise equal
aren't reordered.
- See also
Array.sort_array , reverse()
|