&引用;“过滤器”;基于winner/loser的php数组

&引用;“过滤器”;基于winner/loser的php数组,php,Php,我试图创建一个“表格”,列出比赛中的赢家/输家;为此,我从json中的API接收数据并将其解码到一个数组中,这本身不是问题,只是我想知道是否有可能做到这一点,但以“更好的方式”: $table = array("winner" => array(), "loser" => array()); foreach($matchinfo as $team){ if($team->Win_Status == "Winner"){ array_push($table["winner

我试图创建一个“表格”,列出比赛中的赢家/输家;为此,我从json中的API接收数据并将其解码到一个数组中,这本身不是问题,只是我想知道是否有可能做到这一点,但以“更好的方式”:

$table = array("winner" => array(), "loser" => array());
foreach($matchinfo as $team){
    if($team->Win_Status == "Winner"){ array_push($table["winner"], $team); }
    if($team->Win_Status == "Loser"){ array_push($table["loser"], $team); }
}

也许更“干净”或“性能更好”。

嗯,我想没有太干净

foreach($matchinfo as $team) {
    $table[$team->Win_status][] = $team;
}

为了使它更具可读性(不是说原稿不可读),您可以使用
array\u filter

function only_winners($team) {
  $team->Win_Status == 'Winner';
}

function only_losers($team) {
  $team->Win_Status == 'Loser';
}

$winners = array_filter($matchinfo, 'only_winners');
$losers = array_filter($matchinfo, 'only_losers');

这个问题更适合我。是的,他说“干净”或“性能”:。我认为这比以前的“圆滑”答案更清晰、更容易理解