本文實例分析了php排序算法。分享給大家供大家參考,具體如下:
用PHP寫排序,雖然PHP自動了很多排序方式,SQL語句也可以很快速的從數據庫裡有序的讀出數據。但是不同的需求還有靈活
運用所學的PHP基礎知識。
我想完成如下的效果
排序算法效果圖
就是把一個數值中所以的數據按時間排序並且分行顯示
<?php $array = $mysql->query_array($mysql->sql_select("user","userid,truename,year"," ")); //從數據庫裡面讀出數據 $year = array(); //設置空數組 foreach($array as $value) { array_push($year,$value[2]); //把數據數組裡面的時間數據入棧 } $year = array_unique($year); //去除數組中重復的數據 usort($year, "strnatcmp"); //將數組中的數據按自然數排序 $num = count($year); //統計數據中數據的個數 /*處理函數*/ function isyear($value,$array) { $user = array(); //建立空數組 foreach($array as $val) { if($val[2] == $value) { array_push($user,$val); } } return $user; //返回數組 } ?>
上面字數處理函數。下面是顯示部分代碼
<?php for($i=0;$i<$num;$i++) { echo "<div class='box_user'>"; echo "<div class='boxleft'>{$year[$i]}屆</div>"; echo "<div class='boxright'>"; $user = isyear($year[$i],$array); foreach($user as $v) { echo "<span class={$v[0]}>{$v[1]}</span>"; } echo "</div>"; echo "</div>"; } ?>
數據顯示代碼應該好理解,我這裡就不一行一行寫注釋了。
這樣我們就可以得到開始我們需要的效果。不要以為這樣就完了。。這只是第一步的想法,把實際的問題抽象成代碼。也不知道效果怎麼樣?
我們可以通過時間戳來計算頁面加載數據耗時和用PHP自動函數。
<?php memory_get_usage(); ?>
來計算代碼在運行的所占的內存。
更多關於PHP相關內容感興趣的讀者可查看本站專題:《php排序算法總結》、《PHP常用遍歷算法與技巧總結》、《PHP數據結構與算法教程》、《php程序設計算法總結》、《PHP數學運算技巧總結》、《PHP數組(Array)操作技巧大全》、《php正則表達式用法總結》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。