二维数组按指定的键值排序
/** * 二维数组按指定的键值排序 * @param $array 需要排序的二维数组 * @param $keys 需要排序根据的索引 * @param string $type 正序/倒叙(默认倒序) * @return array|string */public function array_sort( $array, $keys, $type='asc' ){ if( !isset( $array ) || !is_array( $array ) || empty( $array ) ) return ''; if( !isset( $keys ) || trim( $keys ) == '' ) return ''; if( !isset( $type ) || $type == '' || !in_array( strtolower( $type ), array( 'asc', 'desc' ) ) ) return ''; $keysvalue = []; foreach( $array as $key => $val ) { $val[ $keys ] = str_replace( '-', '', $val[ $keys ] ); $val[ $keys ] = str_replace( ' ', '', $val[ $keys ] ); $val[ $keys ] = str_replace( ':', '', $val[ $keys ] ); $keysvalue[] = $val[ $keys ]; } asort( $keysvalue ); //key值排序 reset( $keysvalue ); //指针重新指向数组第一个 foreach( $keysvalue as $key => $vals ) $keysort[] = $key; $keysvalue = []; $count = count( $keysort ); if( strtolower( $type ) != 'asc' ) { for( $i = $count - 1; $i >= 0; $i-- ) $keysvalue[] = $array[ $keysort[ $i ] ]; }else{ for( $i = 0; $i < $count; $i++ ) $keysvalue[] = $array[ $keysort[ $i ] ]; } return $keysvalue;}
转载于:https://www.cnblogs.com/fuxp/p/9927847.html
二维数组按指定的键值排序相关推荐
- php二维数组按照自定义方式对键值排序,PHP 对一个给定的二维数组按照指定的键值进行排序...
$v){ $keysvalue[$k] = $v[$keys]; } if($type == 'asc'){ asort($keysvalue); }else{ arsort($keysvalue); ...
- PHP 读取数据库内容并以二维数组按指定列输出实例
最新PHP 读取数据库内容并以二维数组按指定列输出实例 以下是三零网为大家整理的最新PHP 读取数据库内容并以二维数组按指定列输出实例的文章,希望大家能够喜欢! <?php $host = &q ...
- C语言试题三十七之求除一个2×m整型二维数组中最大元素的值,并将此值返回调用函数。
1. 题目 请编写一个函数function,它的功能是:求除一个2×m整型二维数组中最大元素的值,并将此值返回调用函数. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研究生复试中 ...
- php查找判断二维数组中是否含有某个值
php判断二维数组中是否含有某个值 $arr = array(array('a', 'b'),array('c', 'd') );in_array('a', $arr); // 此时返回的永远都是 f ...
- 杨桃的Python进阶讲座16——数组array(六)一维数组和二维数组的索引和取值(配详细图解)
本人CSDN博客专栏:https://blog.csdn.net/yty_7 Github地址:https://github.com/yot777/ 在进阶讲座8中讲过数组(矩阵)的维度,我们再看看多 ...
- python二维数组排序_Python实现二维数组按照某行或列排序的方法【numpy lexsort】...
本文实例讲述了Python实现二维数组按照某行或列排序的方法.分享给大家供大家参考,具体如下: lexsort支持对数组按指定行或列的顺序排序:是间接排序,lexsort不修改原数组,返回索引. (对 ...
- PHP二维数组用某个字段的值当做键名
最近在学习使用array_column函数,发现一个比较实用的用法.很多时候,我们在获取的二维数组都是索引数组,在某些时刻使用时并不方便,最好是能够以某个字段的值作为键名,这样就能更好的使用了.绝大多 ...
- java 二维变长数组_java二维数组如何指定不同长度
我们知道二维数组,是在一维数组的基础上进行了维度的增加.那么在实际使用的过程中,有时候我们所需要的二维数组,它们其中的维度是不同的,这就需要我们手动的进行设置.下面我们就来一起探究,二维数组在改变维度 ...
- 多维数组之二维数组传参、返回值、申请内存问题
目录 多维数组 存储顺序 二维数组基础知识 数组名 下标 指向数组的指针 二维数组使用 初始化 作为函数参数的二维数组 二维数组返回值与申请内存问题 多维数组 如果某个数组的维数不止1个,它就被称为多 ...
最新文章
- Python使用问题汇总
- 《游戏设计师修炼之道:数据驱动的游戏设计》一2.8小结
- uWSGI+Nginx安装、配置
- Servlet3.1规范翻译 - 应用生命周期事件
- 遗传算法 简单函数优化
- PIL图像处理开发极简教程
- 新Astaroth***病毒可利用杀毒软件窃取数据
- csdn怎样设置友情链接栏目
- 将PowerShell连接到SQL Server –使用其他帐户
- Android开发小结Part2:目录
- ssh: connect to host github.com port 22: Connection refused
- 深入理解java虚拟机-java虚拟机的
- 企业级数据仓库PPT分享
- [架构之路-177]-《软考-系统分析师》-17-嵌入式系统分析与设计 -2- 系统分析与设计、低功耗设计
- 笔记本高分屏字体模糊_4k/1080p屏幕字体模糊怎么办?win10高分屏笔记本字体模糊太小的解决办法...
- 2022刘润年度演讲:进化的力量关键词
- 音视频系列3:编解码技术
- 无人驾驶技术——Radar雷达
- 计算机名更改后无法进入局域网,win10系统局域网计算机名称更改的恢复办法
- 编译极路由(HC5x61)固件