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 相关文章推荐
第三节--定义一个类
Nov 16 PHP
在Windows下编译适用于PHP 5.2.12及5.2.13的eAccelerator.dll(附下载)
May 04 PHP
PHPCMS的使用小结
Sep 20 PHP
php获取ip的三个属性区别介绍(HTTP_X_FORWARDED_FOR,HTTP_VIA,REMOTE_ADDR)
Sep 23 PHP
php 目录遍历、删除 函数的使用介绍
Apr 28 PHP
php实现按指定大小等比缩放生成上传图片缩略图的方法
Dec 15 PHP
yii2.0之GridView自定义按钮和链接用法
Dec 15 PHP
php文件缓存类用法实例分析
Apr 22 PHP
非常经典的PHP文件上传类分享
May 15 PHP
ThinkPHP框架整合微信支付之刷卡模式图文详解
Apr 10 PHP
PHP 加密 Password Hashing API基础知识点
Mar 02 PHP
PHP如何获取Cookie并实现模拟登录
Jul 16 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
php 三维饼图的实现代码
2008/09/28 PHP
PHP实现图片旋转效果实例代码
2014/10/01 PHP
php中JSON的使用与转换
2015/01/14 PHP
大家都应该掌握的PHP关联数组使用技巧
2015/12/25 PHP
浅谈PHP的反射机制
2016/12/15 PHP
JavaScript入门教程(2) JS基础知识
2009/01/31 Javascript
jquery插件开发方法(初学者)
2012/02/03 Javascript
JavaScript中判断对象类型的几种方法总结
2013/11/11 Javascript
JQuery分屏指示器图片轮换效果实例
2015/05/21 Javascript
js图片卷帘门导航菜单特效代码分享
2015/09/10 Javascript
NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to
2016/12/20 Javascript
关于AngularJs数据的本地存储详解
2017/01/20 Javascript
vue-quill-editor实现图片上传功能
2017/08/08 Javascript
vue.js与element-ui实现菜单树形结构的解决方法
2018/04/21 Javascript
小程序视频列表中视频的播放与停止的示例代码
2018/07/20 Javascript
微信小程序五子棋游戏的棋盘,重置,对弈实现方法【附demo源码下载】
2019/02/20 Javascript
基于javascript canvas实现五子棋游戏
2020/07/08 Javascript
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
Python实现在matplotlib中两个坐标轴之间画一条直线光标的方法
2015/05/20 Python
Python实现字符串匹配算法代码示例
2017/12/05 Python
用python简单实现mysql数据同步到ElasticSearch的教程
2018/05/30 Python
python验证码识别教程之滑动验证码
2018/06/04 Python
对Python3.6 IDLE常用快捷键介绍
2018/07/16 Python
python SQLAlchemy的Mapping与Declarative详解
2019/07/04 Python
完美解决python3.7 pip升级 拒绝访问问题
2019/07/12 Python
Django Docker容器化部署之Django-Docker本地部署
2019/10/09 Python
高清屏下canvas重置尺寸引发的问题的解决
2019/10/14 HTML / CSS
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
电子商务专员岗位职责
2013/12/11 职场文书
2014年五一劳动节社区活动总结
2014/04/14 职场文书
市场营销专业自荐书
2014/06/10 职场文书
长辈生日祝福语大全(72句)
2019/08/09 职场文书
HTML基本元素标签介绍
2022/02/28 HTML / CSS
MySQL多表查询机制
2022/03/17 MySQL
win10键盘驱动怎么修复?Win10键盘驱动修复小技巧
2022/04/06 数码科技
css如何把元素固定在容器底部的四种方式
2022/06/16 HTML / CSS