以下示例正常工作:
$name = 'MrSmith';
$var = 'name';
echo ${$var};
但是在提交时我需要使用$_REQUEST
,我无法弄清楚如何编写它。这不起作用:
$_REQUEST[${$var}]
这个的正确语法是什么?
答案 0 :(得分:4)
我想你只是想:
$_REQUEST[$var];
如果$_REQUEST['name']
='name'
$var
的值
同样对于您的原始示例,这也有效:
echo $$var;
我建议阅读variable variables上的部分。
答案 1 :(得分:0)
$$var
是一个变量变量。如果$var
等于问题中描述的“名称”,则会查找变量$name
。 $name
未定义。请考虑以下事项:
$var = 'name';
$_REQUEST['name'] = 'test';
$_REQUEST[$$var]; // is the same as...
$_REQUEST[$name]; // which is the same as...
$_REQUEST[NULL]; // since $name is not set.
echo $_REQUEST[$var]; // prints 'test' because $var evaluates to 'name'.