Use curly brackets to structure code in PHP

Yes, but it won’t create a new local scope. It’s not something that would normally be done. Usually people mark blocks like this with comments.

Update:

It took a bit of digging to find a reference to it in the manual, but here it is:

http://www.php.net/manual/en/control-structures.intro.php

Any PHP script is built out of a series of statements. A statement can be an assignment, a function call, a loop, a conditional statement or even a statement that does nothing (an empty statement). Statements usually end with a semicolon. In addition, statements can be grouped into a statement-group by encapsulating a group of statements with curly braces. A statement-group is a statement by itself as well. The various statement types are described in this chapter.

The key here is statements can be grouped into a statement-group by encapsulating a group of statements with curly braces.

I also had a look for a reference to variable scope as it relates to this situation, but the manual doesn’t specifically mention it, however you can think of it like this:

In PHP, functions and classes create a variable scope. You can read about that here. But a statement-group (as described above) does not. Don’t think of the curly braces of a statement-group like the function (or class) wrapping brackets, but think of them like the curly braces that wrap the statement-group of control structures (if, for, while, switch, etc.) – because that’s exactly what they are. It’s clear that if you’re using an if statement (or any other control structure) that the braces don’t introduce a new scope, they are simply wrappers for a block of statements.

Leave a Comment