Home Backend Development PHP Tutorial PHP 多维数组的排序问题 根据二维数组中某个项排序_PHP

PHP 多维数组的排序问题 根据二维数组中某个项排序_PHP

Jun 01, 2016 pm 12:13 PM
Multidimensional Arrays

PHP内置函数 array_multisort 要求每个数组大小一样
$areas是地区的二维数组,包含人数和次数,现在要按这2种数进行降序排序
复制代码 代码如下:
foreach($areaArray as &$areas) {
$times = $numbers = array();
foreach($areas as $province => $v) {
$times[$province] = $v['times'];
$numbers[$province] = $v['numbers'];
}
array_multisort($times, SORT_DESC, $numbers, SORT_DESC, $areas);
}

比如有个多为数组:
复制代码 代码如下:
$arr = array(
‘d' => array(‘id' => 5, ‘name' => 1, ‘age' => 7),
‘b' => array(‘id' => 2,'name' => 3,'age' => 4),
‘a' => array(‘id' => 8,'name' => 10,'age' => 5),
‘c' => array(‘id' => 1,'name' => 2,'age' => 2)
);

需要对二维数组中的 age 项排序。
需要用到PHP的内置函数 array_multisort(),可以看手册。
自定义函数:
复制代码 代码如下:
function multi_array_sort($multi_array,$sort_key,$sort=SORT_ASC){
if(is_array($multi_array)){
foreach ($multi_array as $row_array){
if(is_array($row_array)){
$key_array[] = $row_array[$sort_key];
}else{
return false;
}
}
}else{
return false;
}
array_multisort($key_array,$sort,$multi_array);
return $multi_array;
}
//处理
echo “

Copy after login
”;
print_r(multi_array_sort($arr,'age'));exit;
//输出
Array
(
[c] => Array
(
[id] => 1
[name] => 2
[age] => 2
)
[b] => Array
(
[id] => 2
[name] => 3
[age] => 4
)
[a] => Array
(
[id] => 8
[name] => 10
[age] => 5
)
[d] => Array
(
[id] => 5
[name] => 1
[age] => 7
)
)
written by 大宇
0
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

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Dimensional journey of PHP multi-dimensional array sorting: from one dimension to multi-dimensional Dimensional journey of PHP multi-dimensional array sorting: from one dimension to multi-dimensional Apr 29, 2024 pm 09:09 PM

Dimensional journey of PHP multi-dimensional array sorting: from one dimension to multi-dimensional

Python program to multiply two matrices using multidimensional arrays Python program to multiply two matrices using multidimensional arrays Sep 11, 2023 pm 05:09 PM

Python program to multiply two matrices using multidimensional arrays

How to combine multiple arrays into one multidimensional array in PHP How to combine multiple arrays into one multidimensional array in PHP Jul 09, 2023 pm 01:08 PM

How to combine multiple arrays into one multidimensional array in PHP

How to use array_walk_recursive function in PHP to perform recursive operations on multi-dimensional arrays How to use array_walk_recursive function in PHP to perform recursive operations on multi-dimensional arrays Jun 26, 2023 am 11:40 AM

How to use array_walk_recursive function in PHP to perform recursive operations on multi-dimensional arrays

Efficient way to reverse multidimensional PHP array Efficient way to reverse multidimensional PHP array Apr 29, 2024 am 09:00 AM

Efficient way to reverse multidimensional PHP array

How to sort multidimensional array in PHP How to sort multidimensional array in PHP Jul 07, 2023 pm 12:45 PM

How to sort multidimensional array in PHP

In-depth discussion of PHP arrays: comprehensive analysis of multi-dimensional arrays, associative arrays, etc. In-depth discussion of PHP arrays: comprehensive analysis of multi-dimensional arrays, associative arrays, etc. Mar 13, 2024 pm 02:36 PM

In-depth discussion of PHP arrays: comprehensive analysis of multi-dimensional arrays, associative arrays, etc.

How to loop through multidimensional array in PHP How to loop through multidimensional array in PHP Jul 07, 2023 am 10:17 AM

How to loop through multidimensional array in PHP

See all articles