しつこく補足です。変数じゃなくて、リテラルでもOKでした。

$test->"fuga"(); // これはダメですが、
$test->{"fuga"}(); // これはOK!

しかし通常の関数は、変数じゃないとダメ。

function fugafuga() {
var_dump("fugafuga");
}
$y = "fugafuga";
$y(); // これはOK。
{"fugafuga"}(); //こっちはダメ。
?

どこにこの仕様は載ってるんでしょう!?