次のようなソート機能があります。
function aasort ($array, $key, $order) {
$sorter=array();
$ret=array();
reset($array);
foreach ($array as $ii => $va) {
$sorter[$ii]=$va[$key];
}
if($order == "asc")
asort($sorter);
else
arsort($sorter);
foreach ($sorter as $ii => $va){
$ret[$ii]=$array[$ii];
}
$array=$ret;
}
キー値の 1 つに基づいて配列をソートします。
そして配列:
$mArray[] = array(
'id' => $v->id,
'count' => $v->count
);
aasort($mArray, 'count', 'desc');
そして、私が得るデータは次のとおりです。
"mArray":
{
"1":{"id":"80","count":"2"},
"0":{"id":"77","count":"1"}
}
開発者ツールに表示されますが、jsonエディターでコピーして確認すると、インデックスの順序で問題が発生します
{
"0":{"id":"77","count":"1"},
"1":{"id":"80","count":"2"}
}
.done(function(d){
for(var x in d.mArray){
d.mArray[x];
}
})
ここでも、0、1、... のインデックス順で取得されるため、リストはソートされていません。