php中的三元运算符和if条件有区别吗?
如果是,请提供。
发布于 2011-05-13 17:54:54
三元运算符是运算符,因此它构成一个表达式。因此,它将有一个值,您可以将其赋给变量或随心所欲地使用。它用于简单的情况,其中一个变量可以根据条件接受两个可能的值。
例如:$status = $age > 18 ? 'adult' : 'child';
尽管有可能,you should not nest the ternary operator。
if的控制结构是完全不同的。它们唯一的共同点是都评估一个条件(true/false)。if用于根据该条件的结果执行代码片段。您会发现自己大部分时间都在使用if (实际上,没有三元组也可以使用)。在某些情况下,如果您将某些类型的if替换为三元类型,则代码更少,可读性更好,例如:
if ($age > 18) {
$status = 'adult';
} else {
$status = 'child';
}发布于 2011-05-13 17:46:52
就我个人而言,我只使用适合一行的三元运算符。如果它需要跨越,那么是时候让好的老了
$value = ($a < 0) ? 'minus' : 'plus';你还可以看到一个有趣的问题,多个三元是如何工作的:
发布于 2018-03-22 23:58:34
If语句比三元语句更快,但在大多数情况下这无关紧要。
Here是一篇关于If语句与三元语句性能的文章。摘要:它基本上是相同的,除非你是在计算大对象,因为三元复制了被计算的对象。这是使用PHP5.3,我不确定它是否在当前版本中进行了更改。
https://stackoverflow.com/questions/5989982
复制相似问题