使用array_multisort按组合值排序

时间:2017-03-23 10:37:07

标签: php

使用PHP 5.6版,MySQL 5.7。

我一直在使用array_multisort按列对行进行排序。通过' apps'以及' subapps'进行排序。我现在要做的是结合' apps'和' subapps'要按照新值' allapps'对列进行排序,这将是' apps'的总和。和' subapps'。

// GET PLAYER INFO
while($data = $get_players->fetch_assoc())      
    {       
    // PLAYER ID
    $idt[$i] = $data['id'];

    // DETERMINE HOW TO DISPLAY NAME
    if($data['firstname'] == '')
        { $names[$i] = $data['lastname']; } 
    else
        { $names[$i] = $data['firstname'] . ' ' . $data['lastname']; }

    $i++;
    }

mysqli_free_result($get_players);

// COUNT APPEARANCES
$i=0;
while($data = $get_apps->fetch_assoc())
    {
    $apps[$i] = $data['apps'];
    $i++;
    }
mysqli_free_result($get_apps);

// COUNT SUBSTITUTE APPEARANCES
$i=0;
while($data = $get_subapps->fetch_assoc())
    {
    $subapps[$i] = $data['subapps'];
    $i++;
    }
mysqli_free_result($get_subapps);

相当简单,这是我尝试过的,但似乎无法发挥作用:

$allapps = $apps + $subapps;  

以下是array_multisort:

array_multisort($allapps, SORT_DESC, SORT_NUMERIC, $apps, $subapps, SORT_DESC, SORT_NUMERIC, $names, $idt);

此刻,它绕过$ allapps并继续按$ app排序,然后是$ subapps。我应该如何最好地结合$ apps和$ subapps的值来排序$ allapps的总和?

提前感谢您的任何建议。

0 个答案:

没有答案