有無計用php/mysql sort得惦

有無計sort得惦
source
sid prev_sid    type
000 197         app_home   
197 198         page_teach  
198 218         page_teach  
199 211         page_step   
211 207         link        
218 559         page_step   
559 199         page_step


result
sid prev_sid    type
000 197         app_home
197 198         page_teach
198 218         page_teach
218 559         page_step
559 199         page_step
199 211         page_step
211 207         link


000 > 197 > 198 > 218 > 559 > 199 > 199 > 211 > 207

first sort sid, then can serach each sid is equal previous record 's prev_sid, if not then move to right position.

TOP

有無計sort得惦
source


result


000 > 197 > 198 > 218 > 559 > 199 > 199 > 211 > 207
殛克 發表於 2010-5-7 12:09



    PHP 用 key=>row array 儲低晒成個 result .
    然後就係 data structure o既 show time .

TOP

補充吓,

e.g.,
  1. <?php

  2. $Graph = array(
  3.     '000' => '197',   
  4.     '197' => '198',  
  5.     '198' => '218',  
  6.     '199' => '211',   
  7.     '211' => '207',        
  8.     '218' => '559',  
  9.     '559' => '199',
  10. );


  11. function search($sid, $graph) {
  12.     if (isset($graph[$sid])) {
  13.         echo "$sid, $graph[$sid] , \n";
  14.         search($graph[$sid], $graph);
  15.     }
  16. };

  17. search('000', $Graph);

  18. ?>
複製代碼

TOP