PHP7 method_exists Uncaught Ошибка: имя функции должно быть строкой

Я получаю эту ошибку:

Неустранимая ошибка: необработанная ошибка: имя функции должно быть строкой в

Для этого кода:

if (function_exists($item['function'])) {
    $item['function']($item, $default);
} elseif (method_exists($this, $item['function'])) {
    $this->$item['function']($item, $default);
}

Я знаю, что изменение кода на

if (function_exists($item['function'])) {
    $item['function']($item, $default);
} elseif (method_exists($this,$item['function'])) {
    $this->{$item['function']}($item, $default);
}

Решил эту ошибку, но мой вопрос, если эта строка

 $item['function']($item, $default);

также будет преобразован в

{$item['function']}($item, $default);

или это можно оставить как есть?

Ответы на вопрос(2)

Ваш ответ на вопрос