PHP If / Else语句不使用大括号

19

以下代码是否总是可以接受的?它似乎能够工作,但是对于所有PHP版本它是否都能够始终可靠地工作呢?

if ($x > $y)
    echo 'x is greater';
elseif ($x == $y)
    echo 'equal';
else
    echo 'y is greater';

谢谢。


无论您使用哪个版本的PHP,这都是可行的。read - xkeshav
6个回答

22

如果你只需要在每个控制块中执行单一操作,那么这种方式跨版本是可接受的,并且会一直有效。使用大括号有助于更轻松地跟踪块的起始和结束位置,以及为将来添加一个陈述句做好准备。

这篇文章概述了PHP中if / else块的各种选项。


8

这样做很好,也是许多语言中快速if的常见方式。正如之前所述 - 如果您使用多行代码,则需要将其放在带有大括号的块中。

例如,在这里:

if (x == 1)
 echo "x is one";
 echo "one is x";

如果x == 1,则将回显“x is one”,而“one is x”将在每次回显时均显示 - 无论x是否等于1。

要使两行代码仅在条件为真时执行,需要将其封装在一个块中。

if (x == 1)
{
 echo "x is one";
 echo "one is x";
}

4
你的代码是可接受的,并且在所有PHP版本中都可以正常使用。不仅PHP,我认为其他语言也支持单语句操作。但是为了可读性和避免错误,在你以后可能需要添加多个语句时,建议使用块语句。

0

代码始终是可接受的。它将在所有版本的PHP中始终正常工作。


0

是的,但它必须只有一行句子。如果你需要使用更多行,你将需要括号。


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接