Detailed two-dimensional array sort php: array_multisort

 

Definition and Usage

with array_multisort () returns a sorted array. You can enter one or more arrays. Function to sort the array of first, followed by the other array, if the same two or more values, it sorts the next array.

Note: The string key name will be retained, but the number keys will be re-indexed, starting at 0 and is incremented by 1.

Note: You can set the sort order and sort types of parameters after each array. If not set, each array will use the default parameter values.

 

Practical application:

  The following two-dimensional array of flashbacks arranged by age, by name being arranged in order.

<?php 
$array[] = array("age"=>20,"name"=>"li");
$array[] = array("age"=>21,"name"=>"ai");
$array[] = array("age"=>20,"name"=>"ci");
$array[] = array("age"=>22,"name"=>"di");
 
foreach ($array as $key=>$value){
 $age[$key] = $value['age'];
 $name[$key] = $value['name'];
}
 
array_multisort($age,SORT_NUMERIC,SORT_DESC,$name,SORT_STRING,SORT_ASC,$array);
print_r($array);
?>

 

Results are as follows:

Array (
[0] => Array ( [age] => 22 [name] => di )
[1] => Array ( [age] => 21 [name] => ai )
[2] => Array ( [age] => 20 [name] => ci )
[3] => Array ( [age] => 20 [name] => li )
)

 

Guess you like

Origin www.cnblogs.com/starfish29/p/11302796.html