В фигурных скобках создается переменная с тем же именем, что и строка, указанная в фигурных скобках.
В вашем коде он создает 4 новые переменные $ a, $ b, $ c, $ d, беря строки из массива
$ var.
Вот пример, чтобы увидеть разницу в переменных, созданных в вашем коде:
http://codepad.org/E2619ufe
<?php
$var = array('a','b','c','d');
$currentState = get_defined_vars();
foreach($var as $item){
${$item} = array();
}
$newState = get_defined_vars();
$newVariables = array_diff(array_keys($newState),array_keys($currentState));
var_dump($newVariables);
?>
Вот пример использования фигурных скобок:
http://codepad.org/KeE75iNP
<?php
${'myVar'} = 12345;
var_dump($myVar);
/* also helpful when the variable name contains $ due to some reason */
${'theCurrency$'} = 4000;
var_dump(${'theCurrency$'});
/* uncomment line below, it will raise syntax error */
//var_dump($theCurrency$);
?>