PHP中单独的花括号的目的是什么

时间:2015-09-17 09:56:39

标签: php

它是一个解析器错误,还是使用像这样的大括号有用吗?

$x = 1;

{
    $x++;
}

据我所知,它的行为就像括号不存在一样,为什么它是有效的语法?

5 个答案:

答案 0 :(得分:7)

没有任何隐藏的意义。它更多的是可读性。

检查manual

  

任何PHP脚本都是由一系列语句构建的。声明可以   是一个赋值,一个函数调用,一个循环,一个条件语句或   甚至是一无所作的陈述(一个空洞的陈述)。声明   通常以分号结尾。此外,语句可以分组   通过封装一组语句到一个语句组中   花括号。声明组本身也是一种声明。

答案 1 :(得分:2)

其目的是将操作分组,以便在只允许一个操作的地方使用。

if (cond) foo();等于if (cond) { foo(); }
foo();等于{ foo(); }

答案 2 :(得分:2)

语句不能像表达式一样组合,你总是可以将语句序列放在一个大括号中的任何地方。

  • 使用curly括号来标记类,函数(OOP中的方法) 术语),循环和控制结构体。
  • 它们也可以在字符串中用于分隔变量 周围的文字。

答案 3 :(得分:0)

{
$x++;
}

就像

{$x++;}

就像

$x++;

他们要表示一段代码。

你也可以考虑这个:

if (true) {
  $x++;
}

代码具有有效的语法,并且它的行为完全没有" if"条件。您可以使用"有效"和无用的代码一样多。

答案 4 :(得分:-2)

花括号可用于将范围更改为本地范围。因此,如果您在括号中定义一个变量,它将不会在括号

之外