我需要從最高計數排序foreach,例如首先計數5,計數4秒,等等......
$i = 0;
$diseases = Diseases::find()->localized($lang)->all();
foreach ($diseases as $disease) {
$selected_symptoms_array = explode(',', $symptoms);
$symptoms_array = explode(',', $disease->symptoms_id);
if (count(array_intersect($selected_symptoms_array, $symptoms_array)) > 0){
$data[$i]['translation']['title'] = $disease->title;
$data[$i]['id'] = $disease->id;
$data[$i]['count'] = count(array_intersect($selected_symptoms_array, $symptoms_array));
$i ;
}
}
uj5u.com熱心網友回復:
解決方案:
ArrayHelper::multisort($data, function ($item) {
return isset($item['count']) ? $item['count'] : $item['id'];
}, SORT_DESC);
更新:這是 yii2 檔案中的標準功能。它在 foreach 之后按給定的鍵對陣列進行排序
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/506633.html
上一篇:按相同字符數對字串進行排序
