日本在线免费播放,国产精品合集一区二区三区,亚洲国产欧美精品,久久青青草原精品国产不卡

 

PHP數(shù)組排序?qū)嵺`上即是將PHP數(shù)組進行排序,在本文中也即是對數(shù)據(jù)庫查詢出來的成果集進行排序。數(shù)據(jù)庫查詢成果有時分不能直接運用,比方mysql等用in句子出來的成果,因而需求對成果進行某種辦法的排序。這時分就需求進行PHP數(shù)組排序了。對數(shù)據(jù)庫成果進行排序請看下面的示例:

本例中data 數(shù)組中的每個單元表明一個表中的一行。這是典型的數(shù)據(jù)庫寄存數(shù)組數(shù)據(jù)的辦法。

比方中的數(shù)據(jù)如下:

volume | edition
-------+--------
67 |       2
86 |       1
85 |       6
98 |       2
86 |       6
67 |       7

數(shù)據(jù)全都寄存在名為 data 的數(shù)組中。這通常是通過循環(huán)從數(shù)據(jù)庫獲得的成果,例如 mysql_fetch_assoc()(實踐上這個函數(shù)你能夠和mysql_fetch_assoc()函數(shù)看成一樣,具體的不同你能夠看PHP的手冊里邊關(guān)于key的不同)。

$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 升序擺放。

如今有了包括有行的數(shù)組,可是 array_multisort() 需求一個包括列的數(shù)組,因而用以下代碼來獲得列,然后排序。

// 獲得列的列表
foreach ($data as $key => $row) {
    $volume[$key]  = $row['volume'];
    $edition[$key] = $row['edition'];
}

// 將數(shù)據(jù)依據(jù) volume 降序擺放,依據(jù) edition 升序擺放
// 把 $data 作為最終一個參數(shù),以通用鍵排序
array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data);

數(shù)據(jù)調(diào)集如今排好序了,成果如下:

volume | edition
-------+--------
98 |       2
86 |       1
86 |       6
85 |       6
67 |       2
67 |       7

實踐上真正在排序的時分還有許多辦法能夠運用,比方php的array數(shù)組自帶的 arsort(),asort(),ksort(),krsort(),natsort(),natcasesort(),rsort(),usort(),array_multisort() 和 uksort()

穩(wěn)定

產(chǎn)品高可用性高并發(fā)

貼心

項目群及時溝通

專業(yè)

產(chǎn)品經(jīng)理1v1支持

快速

MVP模式小步快跑

承諾

我們選擇聲譽

堅持

10年專注高端品質(zhì)開發(fā)
  • 返回頂部