памогите плз... с if

Статус
В этой теме нельзя размещать новые ответы.

bobrdobr94

Создатель
Регистрация
20 Сен 2009
Сообщения
36
Реакции
0
Привет всем!
Вот есть дело такое есть два условия(расположены также как и в коде) но программа всегда выбирает 2-е. Как зделать, что бы программа выбирала правильное условие. а значит 1 ?

1) if ($var2 == 0 && $var3 == 0 && $var5 == 0 && $var6 == 0)
{$var11 = $var1 - $var4;};

2) if ($var2 == 0 && $var3 == 0)
{...};
 
Если все переменные действительно равны нулю, ваш вариант должны был бы срабатывать дважды.
PHP:
if ($var2 == 0 && $var3 == 0 && $var5 == 0 && $var6 == 0) {
    // что-то делаем
} elseif ($var2 == 0 && $var3 == 0) {
    // делаем что-то другое
}
P.S.: вы очень скоро запутаетесь в названиях своих переменных
 
Привет всем!
Вот есть дело такое есть два условия(расположены также как и в коде) но программа всегда выбирает 2-е. Как зделать, что бы программа выбирала правильное условие. а значит 1 ?
1) if ($var2 == 0 && $var3 == 0 && $var5 == 0 && $var6 == 0)
{$var11 = $var1 - $var4;};
2) if ($var2 == 0 && $var3 == 0)
{...};

Наверное так:
if ($var2 == 0 && $var3 == 0 && $var5 == 0 && $var6 == 0){
{$var11 = $var1 - $var4;}
}
else
if ($var2 == 0 && $var3 == 0)
{...};
 
мда... решилось

решилось тем что просто 1 блок поставил ниже второго в коде. но почему не понял...
 
Потому что у тебя необходимое и достаточное условия пересекаются между собой, сам посмотри. $var2 == 0 && $var3 == 0 В обоих случаях. Вообще условие составлено неправильно и нелогично
 
По хорошему, надо бы писать так:
Код:
if ($var2 == 0 && $var3 == 0)
{
    if ($var5 == 0 && $var6 == 0)
    {
        $var11 = $var1 - $var4;
    }else
    {
       ...
    } 
}
 
а если

народ а если
if ($var5 != 0 && $var6 != 0 && $var2 != 0 && $var3 !=0)
{
...
}

if ($var2 == 0 && $var3 == 0)
{
...
}

if ($var5 == 0 && $var6 == 0)
{
...
}

if ($var2 == 0 && $var3 == 0 && $var5 == 0 && $var6 == 0)
{
...
}

можно ли как то объединить в один блок?
 
что то я вопрос не понял. elseif тебе поможет ?

Ты бы хоть логику работы описал, а то по коду найти ошибку при том что ХЗ что ты хочешь сделать этим кодом, проблематично
 
что то я вопрос не понял. elseif тебе поможет ?
Ты бы хоть логику работы описал, а то по коду найти ошибку при том что ХЗ что ты хочешь сделать этим кодом, проблематично

ну вот смотри в начале поста я писал что происходит ошибка, программа выбирает не то условие. ну если посмотреть то видно что некоторые условия содержат одинаковые переменные которые нужно проверить мне нужно сделать максимально рационально...
 
Почему вы так настойчиво не используете elseif?
Сложно точно понять, что вам нужно, но возможно так:
PHP:
if ($var2 == 0 && $var3 == 0 && $var5 == 0 && $var6 == 0) {
    // Первое условие
} elseif ($var5 == 0 && $var6 == 0) {
    // Первое условие не подошло, — второе условие
} elseif ($var2 == 0 && $var3 == 0) {
    // Не подошло ни первое ни второе условие, — третье условие
} else {
    // Не подошло ни одно из условий
}
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху