Динамические переменные — это переменные с изменяемым именем переменной, записываются как $$variable. Переменную визуально можно представить как «$ + $variable», т.е. у переменной может меняться имя.
Пример:
$example = 'hello';
$hello = 'goodbye';
echo($$example); // выведет - goodbye
Что бы попытаться понять что происходит, попробуем представить: $$example => это по сути $ + $example, а в $example содержится ‘hello’, таким образом. мы имеем в результате $ + ‘hello’ , а это переменная $hello, а в переменной $hello у нас лежит строка ‘goodbye’, она и выводится на экран(echo($$example); // выведет — goodbye).
Стоит добавить, что появились дополнительные форматы записи динамических переменных:
$example = 'hello';
$hello = 'goodbye';
echo($$example); // выведет - 'goodbye'
echo("i say ${$example}"); // выведет 'i say goodbye'
echo("tell me ${'hello'}"); // выведет 'tell me goodbye'