$this->{$toShow}();
Разбить его, как показано ниже:
Сначала это объектно-ориентированный стиль программирования, как вы получили увидеть $this and ->
. Во-вторых, {$toShow}()
- это метод (функция), так как вы можете видеть скобки().
Так что теперь {$toShow}()
следует как-то разобрать на имя типа 'compute()
'. И $ toShow - это просто переменная, которая может содержать возможное имя функции. Но остается вопрос, почему {} используется вокруг.
Причина: {} скобки заменяют значение в месте. Чтобы уточнить,
$toShow="compute";
так,
{$toShow}(); //is equivalent to compute();
, но это не так:
$toShow(); //this is wrong as a variablename is not a legal function name