El ejemplo es una declaración de variable dentro de una función:
global $$link;
¿Qué $$
significa?
${$link}
en Bash
El ejemplo es una declaración de variable dentro de una función:
global $$link;
¿Qué $$
significa?
${$link}
en Bash
Respuestas:
Una sintaxis como la que $$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 prueba$name
contiene el nombre de su variable: 'real_variable'
$$name
significa " la variable que tiene su nombre contenido en$name
"
$real_variable
'test'
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á la salida que obtengo:
name
real_variable
test
Entonces, yo diría que sí, puedes hacerlo$$$
;-)
{
y }
son necesarios (hay un ejemplo en el manual de eso)
El $ interno resuelve la variable a en una cadena, y el externo resuelve una variable por esa cadena.
Entonces, considere este ejemplo
$inner = "foo";
$outer = "inner";
La variable:
$$outer
equivaldría a la cadena "foo"
Es una variable de 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 conocido como variable variable )
esto funcionó para mí (encierre entre corchetes):
$aInputsAlias = [
'convocatoria' => 'even_id',
'plan' => 'acev_id',
'gasto_elegible' => 'nivel1',
'rubro' => 'nivel2',
'grupo' => 'nivel3',
];
/* Manejo de los filtros */
foreach(array_keys($aInputsAlias) as $field)
{
$key = $aInputsAlias[$field];
${$aInputsAlias[$field]} = $this->request->query($field) ? $this->request->query($field) : NULL;
}