php對特殊語句查詢結果進行數組排序
來源:易賢網 閱讀:1076 次 日期:2014-09-18 16:38:41
溫馨提示:易賢網小編為您整理了“php對特殊語句查詢結果進行數組排序”,方便廣大網友查閱!

數據庫查詢結果有時候不能直接使用,比如mysql等用in語句出來的結果,因此需要對結果進行某種方式的排序。例子 4. 對數據庫結果進行排序本例中 data 數組中的每個單元表示一個表中的一行。這是典型的數據庫記錄的數據集合。

例子中的數據如下:

volume | edition

-------+--------

67 | 2

86 | 1

85 | 6

98 | 2

86 | 6

67 | 7

數據全都存放在名為 data 的數組中。這通常是通過循環(huán)從數據庫取得的結果,例如 mysql_fetch_assoc()。

$data[] = array('volume' => 67, 'edition' => 2);

$data[] = array('volume' => 86, 'edition' => 1);

$data[] = array('volume' => 85, 'edition' => 6);

$data[] = array('volume' => 98, 'edition' => 2);

$data[] = array('volume' => 86, 'edition' => 6);

$data[] = array('volume' => 67, 'edition' => 7);

?>

本例中將把 volume 降序排列,把 edition 升序排列?,F(xiàn)在有了包含有行的數組,但是 array_multisort() 需要一個包含列的數組,因此用以下代碼來取得列,然后排序。// 取得列的列表foreach ($data as $key => $row) {$volume[$key] = $row['volume'];$edition[$key] = $row['edition'];}// 將數據根據 volume 降序排列,根據 edition 升序排列// 把 $data 作為最后一個參數,以通用鍵排序array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);?>

數據集合現(xiàn)在排好序了,結果如下:

volume | edition

-------+--------

98 | 2

86 | 1

86 | 6

85 | 6

67 | 2

67 | 7

更多信息請查看IT技術專欄

更多信息請查看網絡編程
關于我們 | 聯(lián)系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網