note 43176 deleted from function.array-multisort by aidan
| From: | aidan@php.net | Date: | Sun, 03 Oct 2004 10:38:25 +0000 |
| Subject: | note 43176 deleted from function.array-multisort by aidan | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-77788@lists.php.net to get a copy of this message | ||
Note Submitter: coviedo at intellisoft dot cl
----
All functions described here work for arrays like:
column1[data1a,data1b]
column2[data2a,data2b]
If you have an array by rows, like
row1[data1a,data2a]
row2[data1b,data2b]
This function may help you
<?php
function multisort(&$array, $sortby, $order='ASC') {
$order_s = SORT_DESC;
if ($order == 'ASC') {
$order_s = SORT_ASC;
}
if (!isset($array -> $sortby))
return;
asort($array->$sortby, $order_s);
$sorting = array();
foreach ($array -> $sortby as $key => $val) {
$sorting[] = $key;
}
foreach ($array as $key => $val) {
//sort key
$valaux = array();
for($i=0; $i<count($sorting); $i++) {
$valaux[] = $val[$sorting[$i]];
}
$array->$key = $valaux;
}
}
?>