【发布时间】:2015-08-18 06:32:07
【问题描述】:
我在代码中遇到过这种情况,我认为代码不必要的复杂,我相信我可以重构它以使其更易于理解和阅读。 所以我搜索了一下,发现分解条件重构,但我仍然怀疑如何进行重构
if(count($bagTypes) == 1 && (array_key_exists('type1', $bagTypes)
|| array_key_exists('type2', $bagTypes)
|| array_key_exists('type3', $bagTypes))){
$flag = 1;
}
if(count($bagTypes) == 2 && (
(array_key_exists('type1', $bagTypes) && array_key_exists('type2', $bagTypes)) ||
(array_key_exists('type1', $bagTypes) && array_key_exists('type3', $bagTypes)) ||
(array_key_exists('type2', $bagTypes) && array_key_exists('type3', $bagTypes)))
){
$flag = 1;
}
有没有更好的方法?
【问题讨论】:
标签: php if-statement refactoring conditional