Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Problem bei der Sortierung mehrdimensionaler Arrays Sortieren Sie nach einem Element in einem zweidimensionalen Array

PHP-Problem bei der Sortierung mehrdimensionaler Arrays Sortieren Sie nach einem Element in einem zweidimensionalen Array

高洛峰
高洛峰Original
2016-12-22 11:10:19976Durchsuche

Die in PHP integrierte Funktion array_multisort erfordert, dass jedes Array die gleiche Größe hat.
$areas ist ein zweidimensionales Array von Regionen, einschließlich der Anzahl der Personen und Zeiten. Jetzt müssen wir diese beiden Zahlen in absteigender Reihenfolge sortieren order

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); 
}

Zum Beispiel gibt es ein Most-Array:

$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) 
);

Sie müssen die Alterselemente im zweidimensionalen Array sortieren.
Sie müssen die in PHP integrierte Funktion array_multisort() verwenden. Sie können das Handbuch lesen.
Benutzerdefinierte Funktion:

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 “<pre/>”; 
print_r(multi_array_sort($arr,&#39;age&#39;));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


Bei weiteren Problemen mit der Sortierung mehrdimensionaler PHP-Arrays schauen Sie bitte auf der chinesischen PHP-Website nach verwandten Artikeln zum Sortieren nach einem Element in einem zweidimensionalen Array!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn