Вход

Просмотр полной версии : Три условия без elseif


Sonya
13.11.2017, 19:40
Здравствуйте! Подскажите, пожалуйста, могу ли я без elseif, вот таким образом, проверить на true три условия, если да, то будет ли это корректно:

if (!file_exists($dir) && !file_exists($file) && $a >= 5) {
echo "Все правильно!";
}else{
echo "Не все правильно или не так совсем!";
}

ruslan_mart
13.11.2017, 19:59
Sonya, вполне.

Sonya
13.11.2017, 20:01
Спасибо.

Sonya
13.11.2017, 20:30
Так я понимаю тоже правильно?

if (!file_exists($dir) || !file_exists($file) && $a >= 5) {
echo "Все правильно!";
}else{
echo "Не все правильно или не так совсем!";
}

Вместо и ( && ) или ( || ).

laimas
13.11.2017, 21:49
Так я понимаю тоже правильно?

Правильно, но логика иная.

Sonya
13.11.2017, 21:54
Да, мне надо проверить есть ли папка или файл, и значение переменной "a" соответствует параметру больше или равно 5.

Sonya
13.11.2017, 22:21
Да с логикой проблема.

Sonya
13.11.2017, 22:24
Так правильно:

if (!file_exists($dir) && $a >= 5 || !file_exists($file) && $a >= 5) {
echo "Все правильно!";
}else{
echo "Не все правильно или не так совсем!";
}

Sonya
13.11.2017, 22:36
Или

if (file_exists($dir) || file_exists($file) && $a < 5) {
echo "Файл или папка есть!";
}else{
echo "Файла или папки нет!";
}

laimas
13.11.2017, 22:43
Чем отличается логика И от логики ИЛИ?

Sonya
13.11.2017, 22:56
Мне надо одно из двух, т.е. "ИЛИ", третье значение вкупе с любым из них.

Nexus
14.11.2017, 07:02
Sonya,
Да, мне надо проверить есть ли папка или файл, и значение переменной "a" соответствует параметру больше или равно 5.
(
file_exists($dir) and is_dir($dir) or
file_exists($file) and is_file($file)
) and $a>=5

ruslan_mart
14.11.2017, 08:18
if($a >= 5 && (file_exists($dir) || file_exists($file))) {

}

Sonya
14.11.2017, 18:04
Nexus,
ruslan_mart,
Огромное спасибо!