У меня возникла следующая проблема. У меня есть два параметра, которые настроены на включение и выключение. и результаты отображаются по этим параметрам.
условие1: отключено включено отключено Условие2: отключено отключено разрешенные результаты: разрешено нет нет
Для выполнения условий я использую следующий код. Но ничего не отображается и ошибки не генерируются.
if ( condition1== disabled && condition2 == disabled ) { // Both are disabled Echo "Allowed";} elseif (condition1== disabled && condition2 == enabled ) {//check for condition2 only echo "condition 2";} else (condition == enabled && condition2 == disabled ) {//check for condition1 only echo "condition 1";}
Пожалуйста, поддержите любую новую логику для удовлетворения этих условий.
Я думаю, это то, что вы хотели сделать:
if (condition1 == "disabled" && condition2 == "disabled" ) { // Both are disabled } elseif (condition1 == "enabled" && condition2 == "disabled" ) { // Only Condition1 is enabled } elseif (condition1 == "disabled" && condition2 == "enabled" ) { // Only Condition2 is enabled } elseif (condition1 == "enabled" && condition2 == "enabled" ) { // Both are enabled }
Обратите внимание, что вы забыли закрыть скобку на втором условии, и вы также забыли elseif
в третьем условии. Пожалуйста, скажите мне, не понял ли я этот вопрос.
У меня есть идея получше; он не будет принимать два bools, только одно целое:
int con=0;
В блоке, где установить условие 1, условие2, просто замените его номерами:
0 --> both disabled 1 --> condition1 2 --> condition2
Вы даже можете использовать оператор switch для целого числа с случаями 0,1,2.