diff options
author | Scott Ullrich <sullrich@su.local> | 2009-09-11 13:34:09 -0400 |
---|---|---|
committer | Scott Ullrich <sullrich@su.local> | 2009-09-11 13:34:27 -0400 |
commit | 4a8bc5a23db6e673894e816079580dd1dca829d5 (patch) | |
tree | d4d9347bd814696df1777e502fabdb081b47f322 /etc/inc/util.inc | |
parent | f441ab6809cdf358c321144bb74da1f550136b17 (diff) | |
download | pfsense-4a8bc5a23db6e673894e816079580dd1dca829d5.zip pfsense-4a8bc5a23db6e673894e816079580dd1dca829d5.tar.gz |
Add msort() which will sort lower and uppercase items teogether (packages for example). Sort packages by lower/upper. IE: arping, arpwatch, Backup
Diffstat (limited to 'etc/inc/util.inc')
-rw-r--r-- | etc/inc/util.inc | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/etc/inc/util.inc b/etc/inc/util.inc index 818b08e..85bf991 100644 --- a/etc/inc/util.inc +++ b/etc/inc/util.inc @@ -996,4 +996,29 @@ function timeout($timer = 9) { return $key; } -?> +function msort($array, $id="id", $sort_ascending=true) { + $temp_array = array(); + while(count($array)>0) { + $lowest_id = 0; + $index=0; + foreach ($array as $item) { + if (isset($item[$id])) { + if ($array[$lowest_id][$id]) { + if (strtolower($item[$id]) < strtolower($array[$lowest_id][$id])) { + $lowest_id = $index; + } + } + } + $index++; + } + $temp_array[] = $array[$lowest_id]; + $array = array_merge(array_slice($array, 0,$lowest_id), array_slice($array, $lowest_id+1)); + } + if ($sort_ascending) { + return $temp_array; + } else { + return array_reverse($temp_array); + } +} + +?>
\ No newline at end of file |