Contoh adalah deklarasi variabel dalam suatu fungsi:
global $$link;
Apa $$
maksudnya
${$link}
di Bash
Contoh adalah deklarasi variabel dalam suatu fungsi:
global $$link;
Apa $$
maksudnya
${$link}
di Bash
Jawaban:
Sintaks seperti $$variable
itu disebut Variable Variable .
Misalnya, jika Anda mempertimbangkan bagian kode ini:
$real_variable = 'test';
$name = 'real_variable';
echo $$name;
Anda akan mendapatkan hasil sebagai berikut:
test
Disini:
$real_variable
berisi tes$name
berisi nama variabel Anda: 'real_variable'
$$name
berarti " variabel yang namanya terkandung dalam$name
"
$real_variable
'test'
EDIT setelah komentar @ Jhonny:
Melakukan $$$
?
Nah, cara terbaik untuk mengetahuinya adalah dengan mencoba ;-)
Jadi, mari kita coba bagian kode ini:
$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 />';
Dan inilah output yang saya dapatkan:
name
real_variable
test
Jadi, menurut saya, ya, Anda bisa melakukannya$$$
;-)
{
dan }
diperlukan (ada contoh di manual tentang itu)
$ Bagian dalam menyelesaikan variabel menjadi string, dan bagian luar menyelesaikan variabel dengan string itu.
Jadi, perhatikan contoh ini
$inner = "foo";
$outer = "inner";
Variabel:
$$outer
akan sama dengan string "foo"
Ini variabel variabel .
<?php
$a = 'hello';
$$a = 'world'; // now makes $hello a variable that holds 'world'
echo "$a ${$a}"; // "hello world"
echo "$a $hello"; // "hello world"
?>
Ini menciptakan nama variabel dinamis. Misalnya
$link = 'foo';
$$link = 'bar'; // -> $foo = 'bar'
echo $foo;
// prints 'bar'
(juga dikenal sebagai variabel variabel )
ini berhasil untuk saya (lampirkan dalam tanda kurung siku):
$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;
}