В чем разница между следующими примерами?
ПЕРВЫЙ ПРИМЕР
if($x != '' or $y != '' or $z!=''or $c!=''){
echo "<h3>YOUR INPUT:</h3>";
echo $x.'<br>'.$y.'<br>'.$z.'<br>'.$c.'<br>';
}
ВТОРОЙ ПРИМЕР
if(!($x == '' or $y == '' or $z==''or $c=='')){
echo "<h3>YOUR INPUT:</h3>";
echo $x.'<br>'.$y.'<br>'.$z.'<br>'.$c.'<br>';
}
Пожалуйста, объясни. Я новичок в программировании. Я не мог получить его, когда кто-то опубликовал его в моем вопросе, и я увидел код, который, как мне показалось, совпадает с названием, но я попробовал его и увидел разницу. Помоги мне понять это.
$x != '' or $y != '' or $z!=''or $c!=''
является true
если любой переменных не пустые. Если любая из переменных abc
или иначе не ''
условие true
,
!($x == '' or $y == '' or $z==''or $c=='')
является true
только если все переменных не пустые. Другое более читаемое выражение этих условий:
$x != '' and $y != '' and $z != '' and $c != ''
использовать этот код лучше вы знаете, что это значит х, у, г & с не пусто, дайте результат. || это значит или.
if(!empty($x) || !empty($y) || !empty($z) || !empty($c)){
echo "<h3>YOUR INPUT:</h3>";
echo $x.'<br>'.$y.'<br>'.$z.'<br>'.$c.'<br>';
}
Первый пример будет работать, если любая из четырех переменных не пуста.
Второй пример будет работать только тогда, когда ни одна из четырех переменных не пуста.