php排序算法实例分析

yipeiwu_com5年前PHP代码库

本文实例分析了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程序设计有所帮助。

相关文章

centos 5.6 升级php到5.3的方法

centos 5.6 升级php到5.3的方法

升级很容易,先卸载 php 5.1.6 yum remove php* 然后安装 yum install php53* 就可以了...

基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)

php导入到excel乱码是因为utf8编码在xp系统不支持所有utf8编码转码一下就完美解决了utf-8编码案例Php代码复制代码 代码如下:<?php header("Cont...

php中get_meta_tags()、CURL与user-agent用法分析

本文实例分析了php中get_meta_tags()、CURL与user-agent用法。分享给大家供大家参考。具体分析如下: get_meta_tags()函数用于抓取网页中<m...

如何在php中正确的使用json

从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。 1、json_encode()该函数主要用来将数组和对象,转换为...

smarty缓存用法分析

本文详细分析了smarty缓存的用法。分享给大家供大家参考。具体分析如下: 一开始以为smarty只是用来做一些掩饰php代码功能,但是后来才知道还有模板缓存这个强大的功能。 什么是模板...