我是一个球迷,如果短如果版本,例如:
($thisVar == $thatVar ? doThis() : doThat());
我想删掉else语句,例如:
($thisVar == $thatVar ? doThis());
然而,这行不通。有没有什么方法可以让我错过呢?
zbq4xfa01#
如果没有else,您将无法使用它。但是您可以尝试以下操作:
else
($thisVar != $thatVar ?: doThis());
或
if ($thisVar == $thatVar) doThis();
wkyowqbh2#
三元运算符被设计成产生两个值中的一个,它是一个表达式,而不是一个语句,你不应该用它来代替if/else。没有办法忽略:部分:那么这个表达式的值是多少呢
:
如果你调用的方法有副作用,使用if/else。不要走捷径。可读性比节省几个字符更重要。
yrwegjxp3#
嗯,很有趣,因为执行下面的代码是有效的。
for ($i = 1; $i <=10; $i++) { if ($i % 2) { echo $i; } }
上面的代码确实会输出13579注意,上面没有使用“else”子句。如果你想告诉用户$i % 2是否== FALSE($i的除数产生的余数为0),你可以包含一个else子句来输出偶数,如下所示:
for ($i = 1; $i <=10; $i++) { if ($i % 2) { echo "$i is odd"; echo "<br />"; } else { echo "$i is even"; echo "<br />"; } }
给出输出:1为奇数2为偶数3为奇数4为偶数5为奇数6为偶数7为奇数8为偶数9为奇数10为偶数我希望我的这些非常容易理解的例子能帮助所有PHP的新手,成为构建动态Web应用程序的“最好的”服务器端脚本语言:-)
5jdjgkvh4#
使用NULL可在语句为简写时跳过语句
$a == $b? $a = 10 : NULL;
92dk7w1h5#
只需使用逻辑运算符:和,或,&&,||等等。
($thisVar === $thatVar) && doThis();
经常使用的是:
$obj = doSomething($params) or throw new \Exception('Failed to do');
dgjrabp26#
下面是不使用else实现短if语句的方法$side =“右”;($side == '右侧')?$side值='右侧的值':'';
x3naxklr7#
为我工作:
$leftHand != $rightHand?doThis():null; $leftHand == $rightHand?null:doThis();
7条答案
按热度按时间zbq4xfa01#
如果没有
else
,您将无法使用它。但是您可以尝试以下操作:或
wkyowqbh2#
三元运算符被设计成产生两个值中的一个,它是一个表达式,而不是一个语句,你不应该用它来代替if/else。
没有办法忽略
:
部分:那么这个表达式的值是多少呢如果你调用的方法有副作用,使用if/else。不要走捷径。可读性比节省几个字符更重要。
yrwegjxp3#
嗯,很有趣,因为执行下面的代码是有效的。
上面的代码确实会输出13579
注意,上面没有使用“else”子句。
如果你想告诉用户$i % 2是否== FALSE($i的除数产生的余数为0),你可以包含一个else子句来输出偶数,如下所示:
给出输出:1为奇数2为偶数3为奇数4为偶数5为奇数6为偶数7为奇数8为偶数9为奇数10为偶数
我希望我的这些非常容易理解的例子能帮助所有PHP的新手,成为构建动态Web应用程序的“最好的”服务器端脚本语言:-)
5jdjgkvh4#
使用NULL可在语句为简写时跳过语句
92dk7w1h5#
只需使用逻辑运算符:和,或,&&,||等等。
经常使用的是:
dgjrabp26#
下面是不使用else实现短if语句的方法
$side =“右”;
($side == '右侧')?$side值='右侧的值':'';
x3naxklr7#
为我工作: