Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community!

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

PHP PHP Functions Function Returns and More PHP Closures

Closures have semicolon at end

Is this a unique syntax case using ';' after curly brackets:

$func = function(){...};


1 Answer

Codin - Codesmite
Codin - Codesmite
8,600 Points

It requires a semicolon at the end because it is an expression and not a statement.

If-statements, while-statements, functions, etc are statements which do not need to be semicolon-terminated.

Your example is a command which makes it an expression. Standalone expressions require semicolons.

A statement would be:

function functionName(){}

but this is a command making it an expression and not a statment:

$functionName = function(){};

I think this syntax originates from C.