PHP 数组排序二维或多维排序问题
来源:互联网 发布:工程问题c语言求解 pdf 编辑:程序博客网 时间:2024/04/28 16:12
(个人学习保留,有不对的地方请指正)
交代下背景,之前公司测试提出来的bug,手机端提交的答案后 题号顺序乱了,两个解决办法;
1、在sql中存入的时候进行排序,因为我没权限管理数据库,存入数据的是Java写接口,没有涉及到,所以就不多说了。
2、现在用的在网页端程序中对数据进行新的排序。
--1、因为本人对数组不熟悉,试过sort、asort,这些根据数组的key进行排序,这些没成功。
--2、之后在网上查询了数组排序的函数,找到了array_multisort()。
我的数组类型
例如:
$arr=Array ( '0' => Array ( 'a' => 1, 'b' => 2,'c' => 3 ), '1' => Array ( 'a' => 3,'b' => 2,'c' => 6 ), '2' => Array ( 'a' => 6 ,'b' => 2,'c' => 8 ), '3' => Array ( 'a' => 2 ,'b' => 2,'c' => 8 ));
直接上代码:
$newArr=[];
for($i=0;$i<count($arr);$i++){ $newArr[] = $arr[$i]["a"];}array_multisort($newArr,$arr);
print_r($newArr);
结果:Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 6 )
print_r($arr);
结果:Array ( [0] => Array ( [a] => 1 [b] => 2 [c] => 3 )
[1] => Array ( [a] => 2 [b] => 2 [c] => 8 )
[2] => Array ( [a] => 3 [b] => 2 [c] => 6 )
[3] => Array ( [a] => 6 [b] => 2 [c] => 8 ) )
定义和用法
array_multisort() 函数返回排序数组。您可以输入一个或多个数组。函数先对第一个数组进行排序,接着是其他数组,如果两个或多个值相同,它将对下一个数组进行排序。
注释:字符串键名将被保留,但是数字键名将被重新索引,从 0 开始,并以 1 递增。
注释:您可以在每个数组后设置排序顺序和排序类型参数。如果没有设置,每个数组参数会使用默认值。
0 0
- PHP 数组排序二维或多维排序问题
- PHP多维数组排序
- php 多维数组排序
- PHP多维数组排序
- php多维数组排序
- php多维数组排序
- php 多维数组排序
- PHP多维数组排序
- PHP多维数组排序
- PHP多维数组排序
- PHP:多维数组排序
- PHP多维数组排序
- php 多维数组排序
- PHP多维数组排序
- PHP一维、二维以及多维的数组排序方法
- PHP array_multisort对多维数组或多个数组排序
- 数组 | 数组遍历 | 排序 | 多维(二维)数组
- PHP 数组排序 多维数组排序
- 使用apache benchmark(ab) 测试报错: apr_socket_recv: Connection timed out (110)
- ubuntu12.04下虚拟主机配置
- 【leetcode】Container with most water--python实现
- Construct Binary Tree from Preorder and Inorder Traversal
- as中设置自动联想不区分大小写
- PHP 数组排序二维或多维排序问题
- ARM Linux 3.x的设备树(Device Tree)
- syslog-ng配置说明
- 希尔排序
- apache+tomcat+Jfinal 2.2+dubbo2.5.4+zookeeper3.3.6 +redis+druid 分布式部署成功的一点心得(一)
- JavaScript Promise 告别异步乱嵌套
- C++11新特性
- 文章标题
- 斯特林公式