【发布时间】:2019-12-21 06:01:50
【问题描述】:
我有一些代码,感觉里面有很多重复。我把它归结为以下部分,但我仍然看到一些重复的东西,感觉应该有一种更简洁的方式来编写它。还有什么可以做的吗?还是这样?
$w1 = ($fin[57] > $fin[60]) ? $tc[57] : $tc[60];
$l1 = ($fin[57] > $fin[60]) ? $tc[60] : $tc[57];
$w2 = ($fin[58] > $fin[59]) ? $tc[58] : $tc[59];
$l2 = ($fin[58] > $fin[59]) ? $tc[59] : $tc[58];
我真正想要的是,如果有办法让三元组返回一个真假值数组。像这样的虚构代码:
list($w1, $l1) = (array) ($fin[57] > $fin[60]) ? $tc[57] : $tc[60];
list($w2, $l2) = (array) ($fin[58] > $fin[59]) ? $tc[58] : $tc[59];
【问题讨论】:
-
更多上下文会有所帮助。我们能看到这个算法应该解决的更大的问题吗?也许完全不同的方法可以使这些行完全过时。
-
@deceze - 在此
$fin表示游戏方 id #57 的最终得分,等等。$tc表示玩该方的团队的 id(将“方”视为“家”或“离开”)。所以在日程表上有一场比赛,#57 打#60。获得第 57 名的团队分配有$tc[57]。该游戏获胜者的团队 ID 被分配给$w1变量。不确定该解释是否有助于或使其更加混乱。最终,$w1 团队将进入游戏方 id #61。但这对于这个问题可能并不重要。
标签: php