热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php二维数组排序后获取最大值

本文介绍了如何对PHP二维数组进行排序以及如何获取最大值。同时还提到了在数据分析系统中使用排序的实例,以及如何统计角色等级和创建角色总数。


php二维数组排序后获取最大值

PHP一维数组的排序可以用sort(),asort(),arsort()等函数,但是PHP二维数组的排序需要自定义.

PHP自定义代码如下:



function  array_sort( $arr , $keys , $type = 'asc' ){  //2维数组排序  
  $keysvalue  =  $new_array  =  array (); 
  foreach  ( $arr   as   $k => $v ){ 
   $keysvalue [ $k ] =  $v [ $keys ]; 
 } 
  if ( $type  ==  'asc' ){ 
  asort( $keysvalue ); 
 } else { 
  arsort( $keysvalue ); 
 } 
 reset( $keysvalue ); 
  foreach  ( $keysvalue   as   $k => $v ){ 
   $new_array [ $k ] =  $arr [ $k ]; 
 } 
  return   $new_array ;  

最近在做一个数据分析系统,需要用到各种排序,下面是一段排序,代码如下: 



//$re 为数据来源,二维数组  
 
$re  =  $this ->array_sort( $re , 'LV' , 'desc' ); //排序  
  foreach ( $re   as   $key => $val ){ 
   foreach  ( $val   as   $key2 => $val2 ){ 
    if ( $key2 == "uid" ){ 
    $count [] =  $val2 ; //获取创建角色总数  
    $lv [ $val2 ][]= $re [ $key ][ 'LV' ]; //获取所有角色等级   
   } 
     
  } 
 } 
  $count  =  array_count_values ( $count );  
  foreach ( $count   as   $key => $val ){ 
  M()->query( "update mj_ad_count set create_juese = create_juese+" . $val . " where suid =" . $key ); 
   echo  M()->getLastSql();   
 } 
  foreach ( $lv   as   $key  => $val ){ //等级排查找出最大值后写入统计  
   foreach  ( $val   as   $key2 =>  $val2 ){ 
    if ( $key2 ==0){ 
     //$ls[$key][] = $val2;  
    M()->query( "update mj_ad_count set juese_leave = " . $val2 . " where suid =" . $key ); 
     echo  M()->getLastSql();   
   }    
  } 
 } 



推荐阅读
  • 本文探讨了如何使用Scrapy框架构建高效的数据采集系统,以及如何通过异步处理技术提升数据存储的效率。同时,文章还介绍了针对不同网站采用的不同采集策略。 ... [详细]
  • 本文详细介绍了PHP中几个常用的数组回调函数,包括array_filter、array_map、array_walk和array_reduce。通过具体的语法、参数说明及示例,帮助开发者更好地理解和使用这些函数。 ... [详细]
  • egg实现登录鉴权(七):权限管理
    权限管理包含三部分:访问页面的权限,操作功能的权限和获取数据权限。页面权限:登录用户所属角色的可访问页面的权限功能权限:登录用户所属角色的可访问页面的操作权限数据权限:登录用户所属 ... [详细]
  • 本文探讨了互联网服务提供商(ISP)如何可能篡改或插入用户请求的数据流,并提供了有效的技术手段来防止此类劫持行为,确保网络环境的安全与纯净。 ... [详细]
  • PHP中Smarty模板引擎自定义函数详解
    本文详细介绍了如何在PHP的Smarty模板引擎中自定义函数,并通过具体示例演示了这些函数的使用方法和应用场景。适合PHP后端开发者学习。 ... [详细]
  • 本文详细介绍如何在SSM(Spring + Spring MVC + MyBatis)框架中实现分页功能。包括分页的基本概念、数据准备、前端分页栏的设计与实现、后端分页逻辑的编写以及最终的测试步骤。 ... [详细]
  • 多路查找树:B树与B+树详解
    本文详细介绍了B树及其变种B+树的基本概念、特性以及应用场景。B树作为一种平衡的多路查找树,在数据库和文件系统中有着广泛的应用。文章不仅解释了B树的定义,还深入探讨了B树的结构特点及操作方法。 ... [详细]
  • 探讨了在HTML表单中使用元素代替进行表单提交的方法。 ... [详细]
  • 使用Matlab创建动态GIF动画
    动态GIF图可以有效增强数据表达的直观性和吸引力。本文将详细介绍如何利用Matlab软件生成动态GIF图,涵盖基本代码实现与高级应用技巧。 ... [详细]
  • 本文详细介绍了在Luat OS中如何实现C与Lua的混合编程,包括在C环境中运行Lua脚本、封装可被Lua调用的C语言库,以及C与Lua之间的数据交互方法。 ... [详细]
  • 本文探讨了异步编程的发展历程,从最初的AJAX异步回调到现代的Promise、Generator+Co以及Async/Await等技术。文章详细分析了Promise的工作原理及其源码实现,帮助开发者更好地理解和使用这一重要工具。 ... [详细]
  • 本文详细解析了MySQL中常见的几种错误,并提供了具体的解决方法,帮助开发者快速定位和解决问题。 ... [详细]
  • 本文探讨了如何利用RxJS库在AngularJS应用中实现对用户单击和拖动操作的精确区分,特别是在调整区域大小的场景下。 ... [详细]
  • 本文探讨了Linux环境下线程私有数据(Thread-Specific Data, TSD)的概念及其重要性,介绍了如何通过TSD技术避免多线程间全局变量冲突的问题,并提供了具体的实现方法和示例代码。 ... [详细]
  • 本文详细介绍了五种常用的PHP排序算法——冒泡排序、选择排序、插入排序、希尔排序和堆排序。每种算法都附有代码示例,并通过打印和延时操作来直观展示排序过程。欢迎指出任何错误。 ... [详细]
author-avatar
火云邪神
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有