¿Qué significa $$ (dólar dólar o doble dólar) en PHP?
El ejemplo es una declaración de variable dentro de una función:
global $$link;
¿Que $$
significa?
Una sintaxis como $$variable
se llama Variable Variable .
Por ejemplo, si considera esta parte del código:
$real_variable = 'test';
$name = 'real_variable';
echo $$name;
Obtendrá el siguiente resultado:
test
Aquí:
$real_variable
contiene'test'
$name
contiene el nombre de su variable:'real_variable'
$$name
significa " la variable cuyo nombre está contenido en$name
"- Cual es
$real_variable
- y tiene el valor
'test'
- Cual es
EDITAR después del comentario de @Jhonny:
¿ Haciendo un $$$
?
Bueno, la mejor forma de saberlo es intentarlo ;-)
Entonces, probemos esta parte del código:
$real_variable = 'test';
$name = 'real_variable';
$name_of_name = 'name';
echo $name_of_name . '<br />';
echo $$name_of_name . '<br />';
echo $$$name_of_name . '<br />';
Y aquí está el resultado que obtengo:
name
real_variable
test
Entonces yo diría que sí, puedes hacerlo$$$
;-)
El $ interno resuelve la variable a en una cadena, y el externo resuelve una variable mediante esa cadena.
Entonces, considere este ejemplo.
$inner = "foo";
$outer = "inner";
La variable:
$$outer
sería igual a la cadena "foo"
Es la variable de una variable .
<?php
$a = 'hello';
$$a = 'world'; // now makes $hello a variable that holds 'world'
echo "$a ${$a}"; // "hello world"
echo "$a $hello"; // "hello world"
?>
Crea un nombre de variable dinámica. P.ej
$link = 'foo';
$$link = 'bar'; // -> $foo = 'bar'
echo $foo;
// prints 'bar'
(también conocida como variable variable )