Beispiel ist eine Variablendeklaration innerhalb einer Funktion:
global $$link;
Was heißt $$
das
${$link}
in Bash
Beispiel ist eine Variablendeklaration innerhalb einer Funktion:
global $$link;
Was heißt $$
das
${$link}
in Bash
Antworten:
Eine Syntax wie $$variable
heißt Variable Variable .
Wenn Sie beispielsweise diesen Teil des Codes berücksichtigen:
$real_variable = 'test';
$name = 'real_variable';
echo $$name;
Sie erhalten folgende Ausgabe:
test
Hier :
$real_variable
enthält Test$name
enthält den Namen Ihrer Variablen: 'real_variable'
$$name
bedeuten " die Variable, in der der Name enthalten ist$name
"
$real_variable
'test'
BEARBEITEN nach @ Jhonnys Kommentar:
Ein $$$
?
Der beste Weg, es zu wissen, ist es zu versuchen ;-)
Versuchen wir also diesen Teil des Codes:
$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 />';
Und hier ist die Ausgabe, die ich bekomme:
name
real_variable
test
Also würde ich sagen, ja, das kannst du$$$
;-)
{
und }
erforderlich sind (es gibt ein Beispiel im Handbuch dazu)
Das innere $ löst die Variable a in eine Zeichenfolge auf, und das äußere $ löst eine Variable anhand dieser Zeichenfolge auf.
Betrachten Sie dieses Beispiel
$inner = "foo";
$outer = "inner";
Die Variable:
$$outer
würde gleich der Zeichenfolge "foo"
Es ist die Variable einer Variablen .
<?php
$a = 'hello';
$$a = 'world'; // now makes $hello a variable that holds 'world'
echo "$a ${$a}"; // "hello world"
echo "$a $hello"; // "hello world"
?>
Es wird ein dynamischer Variablenname erstellt. Z.B
$link = 'foo';
$$link = 'bar'; // -> $foo = 'bar'
echo $foo;
// prints 'bar'
(auch als variable Variable bekannt )
das hat bei mir funktioniert (in eckige Klammern setzen):
$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;
}