Приклад - оголошення змінної в межах функції:
global $$link;
Що $$
означає?
${$link}
Баша
Приклад - оголошення змінної в межах функції:
global $$link;
Що $$
означає?
${$link}
Баша
Відповіді:
Синтаксис, такий як $$variable
називається Variable Variable .
Наприклад, якщо врахувати цю частину коду:
$real_variable = 'test';
$name = 'real_variable';
echo $$name;
Ви отримаєте такий вихід:
test
Тут:
$real_variable
містить тест$name
містить ім’я змінної: 'real_variable'
$$name
означає " змінна ts має своє ім'я, що міститься в$name
"
$real_variable
'test'
EDIT після коментаря @ Jhonny:
Робити $$$
?
Ну, найкращий спосіб знати - спробувати ;-)
Отже, спробуємо цю частину коду:
$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 />';
І ось результат, який я отримую:
name
real_variable
test
Отже, я б сказав, що так, ви можете зробити$$$
;-)
{
і }
потрібні (в цьому посібнику є приклад)
Внутрішній $ розв'язує змінну до рядка, а зовнішній вирішує змінну за цим рядком.
Отже, розглянемо цей приклад
$inner = "foo";
$outer = "inner";
Змінна:
$$outer
дорівнювало б рядку "foo"
Це змінна змінна .
<?php
$a = 'hello';
$$a = 'world'; // now makes $hello a variable that holds 'world'
echo "$a ${$a}"; // "hello world"
echo "$a $hello"; // "hello world"
?>
Це створює ім'я динамічної змінної. Напр
$link = 'foo';
$$link = 'bar'; // -> $foo = 'bar'
echo $foo;
// prints 'bar'
(також відома як змінна змінна )
це працювало для мене (додайте у квадратні дужки):
$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;
}