数组排序array_multisort
array_multisort --对多个数组或者多维数组进行排序[参考:secure.php.net]
说明:
bool array_multisort ( array &$array1 [, mixed $array1_sort_order = SORT_ASC [, mixed $array1_sort_flags = SORT_REGULAR [, mixed $... ]]] )
array_multisort() 可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序。
参数
- array1 要排序的array
- array1_sort_order 之前array参数要排列的顺序。SORT_ASC按照上升顺序排序,SORT_DESC按照下降顺序排序。此参数可以和array_sort_flags 互换,也可以完成删除,默认是SORT_ASC。
- array1_sort_flags 为array参数设定选项:
排序类型标志:
SORT_REGULAR - 将项目按照通常方法比较(不修改类型)
SORT_NUMERIC - 按照数字大小比较
SORT_STRING - 按字符串比较
SORT_LOCALE_STRING - 根据当前的本地化设置,按照字符串比较。它会使用locale信息,可以通过setlocale()修改此信息。
SORT_NATURAL - 以字符串的“自然排序”,类似natsort()
SORT_FLAG_CASE - 可以组合(按位或OR)SORT_STRING或者SORT_NATURAL 大小写不敏感的方式排序字符串。
参数可以和array1_sort_order交换或者省略,默认情况下是SORT_REGULAR。
返回值
成功时返回TRUE,或失败时FALSE
实例:
$nums = array(1,4,5,2,9);
$str = array("a","g","i","z","k");
array_multisort($nums , SORT_DESC , $str);
print_r($nums);
print_r($str);
$arr = array(
array("spid"=>"1","time"=>100),
array("spid"=>"1","time"=>105),
array("spid"=>"2","time"=>104),
array("spid"=>"1","time"=>102),
array("spid"=>"2","time"=>101),
);
$spids = array();
$times = array();
foreach ($arr as $key => $value) {
$spids[] = $value['spid'];
$times[] = $value['time'];
}
//array_multisort($times,SORT_DESC ,$spids,SORT_ASC , $arr );
//先按照spids列降序,再按照times列升序
array_multisort($spids,SORT_ASC ,$times,SORT_DESC , $arr );
//array_multisort($spids,SORT_DESC , $arr );
print_r($arr);
输出:
9 5 4 2 1
k i g z a
["1":105,"1":102,"1":100,"2":104,"2":101]
数组排序array_multisort的更多相关文章
- php基础篇-二维数组排序 array_multisort
原文:php基础篇-二维数组排序 array_multisort 对2维数组或者多维数组排序是常见的问题,在php中我们有个专门的多维数组排序函数,下面简单介绍下: array_multisort(a ...
- php 对多维数组排序array_multisort
php 对多维数组排序array_multisort 排序顺序标志: SORT_ASC - 按照上升顺序排序 SORT_DESC - 按照下降顺序排序 排序类型标志: SORT_REGULAR - 将 ...
- 二维,多维数组排序array_multisort()函数的使用
对于数组的排序,很很多方法:随便百度了一下 sort() - 以升序对数组排序 rsort() - 以降序对数组排序 asort() - 根据值,以升序对关联数组进行排序 ksort() - 根据键, ...
- PHP 多维数组排序 array_multisort()
用PHP自带array_multisort函数排序 <?php $data = array(); $data[] = array('volume' => 67, 'edition' ...
- php实现二维数组排序array_multisort($ages, SORT_DESC, $home)函数
1.sql查询排序参数是order by,那么php进行排序呢 可以参考array_multisrot函数 //php进行二维数组排序 -xzz1009 foreach($home as $home) ...
- 对维数组排序 array_multisort()的应用
PHP允许在多维数组上执行一些比较复杂的排序--例如,首先对一个嵌套数组使用一个普通的关键字进行排序,然后再根据另一个关键字进行排序.这与使用SQL的ORDER BY语句对多个字段进行排序非常相似.为 ...
- PHP的一个牛逼的数组排序函数array_multisort
函数详情,具体可参考 官方手册 array_multisort 实际问题是这样的,有这么一组数据: $arr_times = array( array('2018-04-12 04:25:00', 3 ...
- php array_multisort对数据库结果多个字段进行排序
php array_multisort对数据库结果多个字段进行排序$data 数组中的每个单元表示一个表中的一行.这是典型的数据库记录的数据集合. 例子中的数据如下:volume | edition ...
- PHP一维数组和二维数字排序整理
<?php /** 一维数组排序 sort() - 以升序对数组排序 rsort() - 以降序对数组排序 asort() - 根据值,以升序对关联数组进行排序 ksort() - 根据键,以升 ...
随机推荐
- 170122、Netty 长连接服务
推送服务 还记得一年半前,做的一个项目需要用到 Android 推送服务.和 iOS 不同,Android 生态中没有统一的推送服务.Google 虽然有 Google Cloud Messaging ...
- 160801、BlockingQueue处理多线程
前面介绍过spring的taskExecutor,今天介绍一个jdk里处理多线程的方法 一.spring的配置文件(注入bean) <bean id="cmsClickButtonMn ...
- ubuntu 使用串口picocom
连上USB转串口 查看是否识别串口 dmesg | grep ttyUSB0 安装(mint / ubuntu): $ sudo apt-get install picocom 使用: 先赋予 ...
- mfc中 控件 对话框 添加颜色 背景图片
1 设置对话框透明 在设置控件颜色中要使用 nCtlColor Contains one of the following values, specifying the type of control ...
- swiper插件简介及用法
swiper Swiper是纯javascript打造的滑动特效插件,面向手机.平板电脑等移动终端.Swiper能实现触屏焦点图.触屏Tab切换.触屏多图切换等常用效果.Swiper开源.免费.稳定. ...
- sql语句(mysql中json_contains、json_array的使用)
https://blog.csdn.net/qq_35952946/article/details/79131488 https://www.jianshu.com/p/455d3d4922e1 1. ...
- Squid 缓存代理服务器的完整配置
Squid 缓存代理服务器 Squid 的作用 1.通过缓存的方式为用户提供web访问加速 2.对用户的web访问进行过滤控制 缓存代理服务器又分为普通代理服务器,透明代理服务器,和反向代理服务器. ...
- emo前端
1 点击按钮可以在form中添加input控件,以name给input编号,然后点击按钮ajax上传表单,在回调函数中弹框显示结果: <form id="newfriends" ...
- 简述 Python3 文件处理
1.文件处理 找到文件 --> 打开文件 --> 操作:读.写 --> 保存 --> 关闭 1.1.1 写文件 (只要牵扯到文件操作,都是字符串:写文件的时候需要把写的数字转换 ...
- hibernate detached分离查询 与 抓取策略注意事项
1.detached在抓取策略为 jion显式左外连接查询情况下 会产生笛卡儿积现象 DetachedCriteria dc = DetachedCriteria.forClass(Topic.cla ...