This is a terribly inneficient way of handling your situation but I believe it would work.
// First we're going to make a list of all company values for($i=0; $i<count($myarray); $i++) { $company_values[] = $myarray[$i][company]; } // Then we're going to order the array using a standard function. natsort($company_values); // Then we're going to go through $myarray looking for each matching // value and build a new array based on the order of the sorted list. for($i=0; $i<count($company_values); $i++) { for ($j=0; $j=<count($myarray); $j++) { if ($company_values[$i] == $myarray[$j][company]) { $mynewarray[] = $myarray[$j]; } } } // bada bing bada boom you gots your company sorted list... I think $myarray = $mynewarray; I wrote this off the top of my head in like three minutes so any and all corrections would be most welcome. ;) -Kevin ----- Original Message ----- From: "SED" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Friday, April 12, 2002 10:25 AM Subject: [PHP] How to sort by 3rd row in an 2d-Array > Hi, > > I'm trying to sort an array like following > > myArray[1][firstname] = "Joe"; > myArray[1][lastname] = "Smith"; > myArray[1][company] = "Bullock"; > myArray[1][email] = "[EMAIL PROTECTED]"; > myArray[2][firstname] = "Jim"; > myArray[2][lastname] = "Cords"; > myArray[2][company] = "Jamen"; > myArray[2][email] = "[EMAIL PROTECTED]"; > etc... > > by the company name. How can I do it? > > I found the solution on php.net > (http://www.php.net/manual/en/function.array-multisort.php) but it sorts > only the first row: > > foreach ($myArray as $val) { > $sortarray[] = $val['nafn']; > echo $val['stadur']; > } > array_multisort($myArray, $sortarray); > > Thanks in advance! > > SED > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php