таблицы истинности в php с более чем 3 переменными - PullRequest
0 голосов
/ 28 сентября 2019

Hi StackOverflow people.

если у меня есть 3 переменные вне цикла, называемые:

 $atr
 $ber
 $cdr

Другая система предоставит 2 значения параметра для этой 3 переменной: Пустоили не пусто.

и другие 3 переменные внутри цикла: значение для каждой переменной происходит из другой системы и зависит от $ i, каждый цикл получит различное значение

$aa 
$bb 
$cc

теперь мой код:

function SelectAll2()
{

$arrArraySize = 283;

$atr =  Empty or not empty.;
$ber =  Empty or not empty.; 
$cdr =  Empty or not empty.; 


if($atr=="" && $ber=="" && $cdr==""){ represent 0 0 0
  return 1;
}
elseif($atr=="" && $ber=="" && $cdr!=""){
  for ($i=1; $i<$arrArraySize; $i++)
  {
  $cc = value come from Another system and depend on $i every loop will get diffrent value
    if( $cdr==$cc){ 
    return 1;
    }
  }
}elseif($atr=="" && $ber!="" && $cdr==""){  represent 0 1 0
  for ($i=1; $i<$arrArraySize; $i++)
  {
  $bb = value come from Another system and depend on $i every loop will get diffrent value
    if($ber==$bb){ 
    return 1;
    }
  }  
}elseif($atr!="" && $ber=="" && $cdr==""){  represent 1 0 0
  for ($i=1; $i<$arrArraySize; $i++)
  {
  $aa = value come from Another system and depend on $i every loop will get diffrent value
    if($atr==$aa){ 
    return 1;
    }
  } 
}elseif($atr=="" && $ber!="" && $cdr!=""){   represent 0 1 1
  for ($i=1; $i<$arrArraySize; $i++)
  {
  $bb = value come from Another system and depend on $i every loop will get diffrent value
  $cc = value come from Another system and depend on $i every loop will get diffrent value
    if($ber==$bb && $cdr==$cc){ 
    return 1;
    }
  } 
}elseif($atr!="" && $ber=="" && $cdr!=""){   represent 1 0 1
  for ($i=1; $i<$arrArraySize; $i++)
  {
  $aa = value come from Another system and depend on $i every loop will get diffrent value
  $cc = value come from Another system and depend on $i every loop will get diffrent value
    if($atr==$aa && $cdr==$cc){ 
    return 1;
    }
  } 
}elseif($atr!="" && $ber!="" && $cdr==""){  represent 1 1 0
  for ($i=1; $i<$arrArraySize; $i++)
  {
  $aa = value come from Another system and depend on $i every loop will get diffrent value
  $bb = value come from Another system and depend on $i every loop will get diffrent value
    if($atr==$aa && $ber==$bb){ 
    return 1;
    }
  } 
}else{     represent 1 1 1
  for ($i=1; $i<$arrArraySize; $i++)
  { 
  $aa = value come from Another system and depend on $i every loop will get diffrent value
  $bb = value come from Another system and depend on $i every loop will get diffrent value
  $cc = value come from Another system and depend on $i every loop will get diffrent value
    if($cdr==$cc && $atr==$aa && $ber==$bb){
      return 1;
    } 
  }
}
}

есть ли способ написать этот код более эффективно?

, потому что он грязный и предназначен только для 3 внешних переменных цикла ($ atr, $ ber, $ cdr) и 3 внутри переменной цикла ($ aa, $ bb, $ cc)

, и мне нужно это для 4 переменных и даже 6. Если 6, например, я могу добавить другие 3 внешних переменных ($ atr, $ ber, $ cdr, $ fdsf, $ tre, $ dsds) и другие 3 внутренние переменные ($ aa, $ bb, $ cc, $ dd и т.д., $ ff)

спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...