程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php組合排序簡單實現方法

php組合排序簡單實現方法

編輯:PHP綜合

本文實例講述了php組合排序簡單實現方法。分享給大家供大家參考,具體如下:

今天被一個組合排序糾結了一晚上,可能是開始沒轉過彎,所以沒想到用二個棧。用了二個棧就很簡單的完成了需求效果

組合排序想象圖

為了完成這個效果圖,可糾結死我了,先用sql組合查詢,結果是組合了,但是效果達不到。現在貼出PHP代碼

//獲取學生信息
private function ground($data)
{
$stu = array(); //新建一個學號棧,存儲學生學號
foreach($data as $key=>$value)
{
if(in_array($value["studentid"],$stu)) //判斷學號是不是已經被存儲
{
array_push($array[$value["studentid"]],$value["selectbh"]); //入棧
array_push($array[$value["studentid"]],$value["taskid"]); //入棧
}
else
{ // 動態新建學生信息棧。
$array[$value["studentid"]] = array($value['selectbh'],$value['taskid']);
array_push($stu,$value["studentid"]); //再學號棧裡面沒有的學號入棧
}
}
unset($stu); //注銷學號棧
return $array; //返回學生信息節點
}

就上面的代碼,就可以做到我們想的效果了,預覽這個頁面得到下面的效果

array(2) {
 ["10408400227"] => array(4) {
  [0] => string(1) "1"
  [1] => string(1) "4"
  [2] => string(1) "2"
  [3] => string(1) "5"
 }
 ["10408400229"] => array(6) {
  [0] => string(1) "1"
  [1] => string(1) "4"
  [2] => string(1) "2"
  [3] => string(2) "28"
  [4] => string(1) "3"
  [5] => string(2) "14"
 }
}

形成了一個二維數組,用學號做了數組的鍵,這樣就關聯了學號,可以得到對於的效果圖了。

更多關於PHP相關內容感興趣的讀者可查看本站專題:《PHP數據結構與算法教程》、《php程序設計算法總結》、《PHP數學運算技巧總結》、《PHP數組(Array)操作技巧大全》、《php排序算法總結》、《PHP常用遍歷算法與技巧總結》、《php正則表達式用法總結》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》

希望本文所述對大家PHP程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved