如何通过两个键对多维数组进行排序
How to sort a multidimensional array by two keys
我有以下数组。
我如何先按 tabelle_punkte 排序,然后按 tabelle_tore 排序?
我尝试使用 usort,但不确定如何使用它。
有小费吗?
Array
(
[0] => Array
(
[tabelle_id] => 113
[tabelle_mannschaft] => 21
[turnier_id] => 168
[tabelle_runde] => vorrunde
[tabelle_gruppe] => A
[tabelle_platz] => 1
[tabelle_spiele] => 1
[tabelle_tore] => 2
[tabelle_gegentore] => 2
[tabelle_punkte] => 1
)
[1] => Array
(
[tabelle_id] => 114
[tabelle_mannschaft] => 1
[turnier_id] => 168
[tabelle_runde] => vorrunde
[tabelle_gruppe] => A
[tabelle_platz] => 1
[tabelle_spiele] => 2
[tabelle_tore] => 2
[tabelle_gegentore] => 2
[tabelle_punkte] => 3
)
)
可能是这样的:
usort($your_array, function($a, $b){
if($a['tabelle_punkte'] == $b['tabelle_punkte']){
if($a['tabelle_tore'] == $b['tabelle_tore'])
return 0;
else if($a['tabelle_tore'] < $b['tabelle_tore'])
return -1;
else
return 1;
}
else if($a['tabelle_punkte'] < $b['tabelle_punkte'])
return -1;
else return 1;
});
我有以下数组。 我如何先按 tabelle_punkte 排序,然后按 tabelle_tore 排序?
我尝试使用 usort,但不确定如何使用它。
有小费吗?
Array
(
[0] => Array
(
[tabelle_id] => 113
[tabelle_mannschaft] => 21
[turnier_id] => 168
[tabelle_runde] => vorrunde
[tabelle_gruppe] => A
[tabelle_platz] => 1
[tabelle_spiele] => 1
[tabelle_tore] => 2
[tabelle_gegentore] => 2
[tabelle_punkte] => 1
)
[1] => Array
(
[tabelle_id] => 114
[tabelle_mannschaft] => 1
[turnier_id] => 168
[tabelle_runde] => vorrunde
[tabelle_gruppe] => A
[tabelle_platz] => 1
[tabelle_spiele] => 2
[tabelle_tore] => 2
[tabelle_gegentore] => 2
[tabelle_punkte] => 3
)
)
可能是这样的:
usort($your_array, function($a, $b){
if($a['tabelle_punkte'] == $b['tabelle_punkte']){
if($a['tabelle_tore'] == $b['tabelle_tore'])
return 0;
else if($a['tabelle_tore'] < $b['tabelle_tore'])
return -1;
else
return 1;
}
else if($a['tabelle_punkte'] < $b['tabelle_punkte'])
return -1;
else return 1;
});