Область действия - это граница, где вы можете получить доступ к переменной (или свойству или методу).Ваш код не является примером области видимости, это синтаксический анализ.В двойных кавычках php распознает и попытается оценить переменные.Поскольку $ b [..] - это способ обращения к элементу массива, php попытается проанализировать его как таковой.
Фигурные скобки используются для нескольких вещей.В контексте вашего кода они разграничивают начало и конец, если ваше условие if (...), как в
if (condition)
{
// do all
// of this stuff
// between the { and }
// if the condition
// is true
}
Это не имеет ничего общего с областью видимости, если только вы не хотите смотреть на него всмысл «это где код, который будет выполняться, если условие истинно, начинается и заканчивается», но, как уже упоминалось, это не то, что на самом деле означает «область».
Вы также можете использовать {..}, чтобы сообщить php, где начинать и заканчивать имя переменной, чтобы избежать неоднозначности.Например:
В этом примере php попытается проанализировать переменную как $ abar, поскольку это допустимое имя переменной:
$a = "foo";
$b = "$abar"
echo $b; // output : nothing - $abar doesn't exist (will give you a notice)
Так как вы хотите, чтобы она анализировала $ a, а не $abar, вы бы использовали {..}, чтобы указать начало и конец имени переменной:
$a = "foo";
$b = "${a}bar"
echo $b; // output : foobar