是否可以在PHP if/then语句的"then"部分使用逻辑运算符?
这是我的代码:
if ($TMPL['duration'] == NULL) {
$TMPL['duration'] = ('120' or '124' or '114' or '138'); }
else {
$TMPL['duration'] = ''.$TMPL['duration']; }
使用else if
。
$a = 1;
if($a === 1) {
// do something
} else if ($a === 2) {
// do something else
}
请注意,在大多数情况下,使用switch语句更好,例如:
switch($a) {
case 1:
// do something
break;
case 2:
// do something else
break;
}
或:
switch(TRUE) {
case $a === 1 :
// do something else
break;
case $b === 2 :
// do something else
break;
}
您的目标是switch
吗?
switch($TMPL['duration']) {
case NULL:
case '120':
case '124':
case '114':
case '138':
<do stuff>
break;
default:
$TMPL['duration'] = ''.$TMPL['duration'];
}
也可以使用in_array
:
if ($TMPL['duration'] === NULL
|| in_array($TMPL['duration'], array('120','124','114','138')) {
// Do something if duration is NULL or matches any item in the array
} else {
// Do something if duration is not NULL or does not match any item in array
}