php组合排序简单实现方法


Posted in PHP onOctober 15, 2016

本文实例讲述了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 相关文章推荐
推荐一篇入门级的Class文章
Mar 19 PHP
PHP实现显示照片exif信息的方法
Jul 11 PHP
浅谈php和.net的区别
Sep 28 PHP
PHP里8个鲜为人知的安全函数分析
Dec 09 PHP
php中静态类与静态变量用法的区别分析
Jan 15 PHP
PHP判断网络文件是否存在的方法
Mar 12 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
Jun 29 PHP
一个完整的php文件上传类实例讲解
Oct 27 PHP
php记录搜索引擎爬行记录的实现代码
Mar 02 PHP
PHP的PDO预定义常量讲解
Jan 24 PHP
php如何比较两个浮点数是否相等详解
Feb 12 PHP
ThinkPHP 5.1 跨域配置方法
Oct 11 PHP
PHP中字符与字节的区别及字符串与字节转换示例
Oct 15 #PHP
php实现博客,论坛图片防盗链的方法
Oct 15 #PHP
PHP云打印类完整示例
Oct 15 #PHP
PHP实现统计在线人数功能示例
Oct 15 #PHP
Thinkphp连表查询及数据导出方法示例
Oct 15 #PHP
PHP实现导出excel数据的类库用法示例
Oct 15 #PHP
PHP数组操作简单案例分析
Oct 15 #PHP
You might like
一个用于网络的工具函数库
2006/10/09 PHP
php简单获取文件扩展名的方法
2015/03/24 PHP
PHP5.2中PDO的简单使用方法
2016/03/25 PHP
Laravel框架创建路由的方法详解
2019/09/04 PHP
Javascript代码混淆综合解决方案-Javascript在线混淆器
2006/12/18 Javascript
Gird事件机制初级读本
2007/03/10 Javascript
javascript 避免闭包引发的问题
2009/03/17 Javascript
jquery选择器(常用选择器说明)
2010/09/28 Javascript
UI Events 用户界面事件
2012/06/27 Javascript
jQuery.each()用法分享
2012/07/31 Javascript
js计算字符串长度包含的中文是utf8格式
2013/10/15 Javascript
深入理解javascript中defer的作用
2013/12/11 Javascript
window.open()详解及浏览器兼容性问题示例探讨
2014/05/29 Javascript
jquery操作angularjs对象
2015/06/26 Javascript
JS获取文件大小方法小结
2015/12/08 Javascript
javascript实现计时器的简单方法
2016/02/21 Javascript
Nodejs中Express 常用中间件 body-parser 实现解析
2017/05/22 NodeJs
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
2017/06/09 jQuery
深入解析nodejs HTTP服务
2017/07/25 NodeJs
Vue Extends 扩展选项用法完整实例
2019/09/17 Javascript
vue-quill-editor的使用及个性化定制操作
2020/08/04 Javascript
Vue自定义多选组件使用详解
2020/09/08 Javascript
[55:35]VGJ.S vs Mski Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python序列之list和tuple常用方法以及注意事项
2015/01/09 Python
使用IronPython把Python脚本集成到.NET程序中的教程
2015/03/31 Python
python中defaultdict的用法详解
2017/06/07 Python
python实现列表中最大最小值输出的示例
2019/07/09 Python
python 实现图像快速替换某种颜色
2020/06/04 Python
澳大利亚最大的女装零售商:Millers
2017/09/10 全球购物
GafasWorld西班牙:购买太阳镜、眼镜和隐形眼镜
2019/09/08 全球购物
Ibatis如何调用存储过程
2015/05/15 面试题
CNC数控操作工岗位职责
2013/11/19 职场文书
慈善晚会策划方案
2014/05/14 职场文书
班主任寄语2015
2015/02/26 职场文书
学校清洁工岗位职责
2015/04/15 职场文书
教师读书笔记
2015/06/29 职场文书