El tema de variables variables es un poco MindBlow, trataré de hacer mi aporte explicándolo un poco mejor:
Una variable es PHP se conforma por el símbolo del dolar “$” y el nombre de la variable “name”, por tanto, puedo tener estas variables:
$pepito;
$pablito;
$freddyto;
$platzito;
Entonces, en el caso de:
$app = "name";
$name = "platzi";
Cuando pones el primer sígno de dolar: “$” estás haciendo referencia a que vas a declarar una variable, ¿Recuerdas que una variable se compone de dos partes? El dólar y el nombre, por tanto, si ya escribí el dólar, me falta escribir el nombre, pero en este caso estámos escribiendo:
echo $$app;
Eso quiere decir que… ¿El nombre de mi variable es $app? ¡Sí! El nombre de tu variable es $app, pero un momento, $app también tiene un signo de dólar… ¡$app también es una variable! entonces, PHP trata de resolver ese valor, ¿Cuál es el valor de $app? El valor de $app es “name” por tanto, en la expresión “echo $$app;” PHP reemplaza “$app” por “name” (que es su valor), y entonces, la epresión queda como “echo $name;” recuerda, $app fue sustituido por el valor de su variable, ¡Y ahora si! Ya tenemos la variable que queríamos, le estamos pidiendo a PHP que me imprima el valor de $name, ¿Y cuál es el valor de $name? ¡El valor de $name es “platzi”!
Así es como funcionan las variables variables en PHP, espero le pueda ser de ayuda a alguien ❤️
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?