PHP中的备用If语句

如果您已经用PHP编程了一段时间,那么if语句将使您变得很陌生。语法如下:

if($something == $somethingelse){

  //做点什么

}elseif($something == $anotherthing){

  //做另一件事

}else{

  // 默认动作

}

PHP引擎还允许您在不需要花括号的情况下执行所谓的“惰性编程”。如果满足if子句,则仅运行if语句下面的行。

if($something == $somethingelse)

  // 做点什么

这里的问题是,将其放入程序的其余部分后,代码几乎变得不可读,因此无法维护。花括号使查看程序的工作变得容易得多。为了提高可读性和维护性,许多开发人员认为不包括它们是不好的样式。

还有一种替代机制,该机制在结尾的花括号处使用冒号(:),并在语句结尾处使用endif。这是一个例子。

if($something == $somethingelse): 

  // 做点什么

elseif($something == $anotherthing):

  // 做另一件事

else:

  // 默认动作

endif;

最后,您可以使用三元运算符或“?:”运算符。它具有以下语法:

$item = ($something==1) ? 'yes' : 'no';

当您执行类似这样的非常简单的语句时,这很好,但是当您开始嵌套它们时,您会发现它会产生奇怪的结果或只是完全无法读取。三元运算符是从左到右求值的,因此请执行以下操作:

$value = true;

echo ($value==true)?'true':($value==false)?'t':'false';

将产生结果t,这是错误的!为了解决这个问题,您需要用括号将不同的部分分开。这是上面示例的正确版本。

$value = true;

echo ($value==true)?'true':(($value==false)?'t':'false');

两个以上的级别以及这种类型的语句可能会非常令人困惑,因此,我建议您仅在确定要查找一件事或另一件事时才使用此语句。

以上是 PHP中的备用If语句 的全部内容, 来源链接: utcz.com/z/343899.html

回到顶部