Home > Backend Development > PHP Tutorial > PHP二维数组排序问题

PHP二维数组排序问题

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-23 14:08:23
Original
1073 people have browsed it

PHP二维关联数组,按一个关键字升序,一个关键字降序,如何实现?
我知道能用系统函数array_multisort()简单实现

foreach($data as $key=>$value){  $win[$key] = $value['win'];  $lose[$key] = $value['lose'];}array_multisort($win,SORT_ASC,$lose,SORT_DESC,$data);var_dump($data);
Copy after login

可是如果字段多了呢,求大神指导如何用其他的方法实现??
$data[] = array('win' => 67, 'lose' => 2);$data[] = array('win' => 86, 'lose' => 1);$data[] = array('win' => 85, 'lose' => 6);$data[] = array('win' => 98, 'lose' => 2);$data[] = array('win' => 86, 'lose' => 6);$data[] = array('win' => 67, 'lose' => 7);
Copy after login


回复讨论(解决方案)

无论用什么方法,都需要对每个排序键进行处理

预处理的 foreach 实际是在对排序键做索引

multisort参数继续列下去就是

但是,实际应用时,如果数据不多,基本是三列排序就决定了,第四项之后对顺序影响很微的

Related labels:
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template