提问人:LIU YUE 提问时间:12/19/2015 最后编辑:Mi-CreativityLIU YUE 更新时间:12/19/2015 访问量:105
在函数和类之外将变量与 PHP 的超全局数组一起使用
Use variable variables with PHP's Superglobal arrays outside of function and class
问:
我是PHP的初学者,我发现一个警告说:
请注意,变量变量不能在函数或类方法中与 PHP 的超全局数组一起使用。
那么,这是否意味着我可以在函数和类方法之外使用带有超全局变量的变量,如下所示:
<?php
foreach(array('_GET','_POST','_COOKIE','_REQUEST') as $key) {
if (isset($$key)){
foreach($$key as $_key => $_value){
$$key[$_key] = MyFunc($_value);
}
}
}
function MyFunc($str){
********************
}
?>
实际上,我试过了,它似乎按预期工作, 但是为什么PHP不允许在函数或类中使用它,那么考虑因素是什么呢?
答:
0赞
br3nt
12/19/2015
#1
我认为这意味着你不能做这样的事情。isset($$key)
也许相反,这样做,.$request = $$key
foreach(array('_GET','_POST','_COOKIE','_REQUEST') as $key) {
$request = $$key;
if (isset($request)){
foreach($request as $_key => $_value){
$request[$_key] = MyFunc($_value);
}
}
}
上一个:定义变量变量时未定义的变量
下一个:动态将索引追加到变量
评论