数组排序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() - 根据键,以升 ...
随机推荐
- iOS 状态栏更改为白色
如果觉得在iOS 7启动期间状态栏黑色不合你意,以下方法可改变Status bar style成白色 在工程的plist添加 Status bar style,改变style值 默认是Gray sty ...
- linux一台机器文件传到另一台机器上
登录一台机器35.73: scp -P 端口 要传的文件 user@xxx.xxx.xxx.xxx:/目标文件夹/ 例子 :scp -r -P3561 /home/ismp/build/app/bec ...
- mac同时安装多个jdk
DK8 GA之后,小伙伴们喜大普奔,纷纷跃跃欲试,想体验一下Java8的Lambda等新特性,可是目前Java企业级应用的主打版本还是JDK6, JDK7.因此,我需要在我的电脑上同时有JDK8,JD ...
- cocos2d-X学习之主要类介绍:精灵角色(CCSprite)
CCSprite是一副2D图像,CCSprite可以通过图像或者图像中的一个矩形子区域创建 如果它的父节点或者任意继承树上的节点是CCspriteBatchNode则具有下述特性: 父节点是CCSpr ...
- decode-encode --其他使用可能有问题
SELECT id,DECODE(name,'password') FROM test UPDATE test SET `name`=ENCODE(`name`,'password')
- mysql 使用命令执行外部sql文件
语句 source e:\\phpPro\\fileName.sql 注意,不需要再后面加 分号 !!!!!
- FW qunit introduction
自动化测试软件对于开发来说是一个很重要的工具,而单元测试对于自动化测试来说是基本组成部分:软件的每一个组件或者单元可以在非人工介入的情况下,使用测试工具一遍遍的重复执行.换句话说,就是你可以写一次测试 ...
- python基础-第十三篇-13.2Web框架之Tornado
Tornado是非阻塞异步web frame,而且速度相当快,得力于其非阻塞的方式和对epoll的运用 Tornado每秒可以处理数以千计的链接,所以它可以有效的处理C10K问题 下载安装 pip3 ...
- Python3+Selenium3自动化测试-(四)
selenium鼠标事件 # coding=utf-8 import time from selenium import webdriver from selenium.webdriver.commo ...
- sql server内存使用情况
查看Sql Server 数据库的内存使用情况 转自:https://www.cnblogs.com/wanghao4023030/p/8299478.html DBCC MemoryStatu ...