The short answer is this: embedding variables in strings using the "brace" syntax you refer to is usually easier to read and understand than a bunch of concatenation.
Wrapping braces around the variable name helps PHP determine exactly where the variable name starts and stops within the string, so it doesn't get mixed up with literal characters around it.
Here's an example straight from the docs about why this can be an issue:
If a dollar sign ($) is encountered, the parser will greedily take as many tokens as possible to form a valid variable name. Enclose the variable name in curly braces to explicitly specify the end of the name.
<?php
$juice = "apple";
//This will work as expected
echo "He drank some juice made of {$juice}s.";
//Doesn't work due to the trailing 's'
//PHP thinks you're trying to use a variable called $juices, which doesn't exist
echo "He drank some juice made of $juices.";
Read more: http://php.net/manual/en/language.types.string.php#language.types.string.parsing