discuz代码foreach(array('_COOKIE', '_POST', '_GET') as $_request) {1
foreach($$_request as $_key => $_value) {
$_key{0} != '_' && $$_key = daddslashes($_value);
}
}
foreach($$_request as $_key => $_value)
$$_request这个可变变量有啥用呢。$_request不也是一样嘛?????不解中
foreach($$_request as $_key => $_value) {
$_key{0} != '_' && $$_key = daddslashes($_value);
}
}
foreach($$_request as $_key => $_value)
$$_request这个可变变量有啥用呢。$_request不也是一样嘛?????不解中
$a = '_POST';
$$a就是$_POST了
$$_request这个可变变量有啥用呢。$_request不也是一样嘛?????不解中
=============
foreach(array('_COOKIE', '_POST', '_GET') as $_request) {
//遍历数组,把数组每一项值赋给$_request,假设当前遍历到了_COOKIE,即$_request === '_COOKIE'
foreach($$_request as $_key => $_value) {
//接以上的注释,因为_COOKIE赋给了$_request,所以,$$_request就变成了$_COOKIE,开始遍历$_COOKIE..
$_key{0} != '_' && $$_key = daddslashes($_value);
}
}
foreach($_request as $_value) {
echo $_value."</br>";
}
}这不是一样嘛,,非得$$一下是为什么呢,,初学php,请达人帮助理解
===================================================================================
$_request = '_COOKIE',此时$_request是字符串'_COOKIE',你foreach个字符串干什么呢?而$$_request才是$_COOKIE!!!
foreach($$_request as $_key => $_value) {
$_key{0} != '_' && $$_key = daddslashes($_value);
}
} 与foreach(array($_COOKIE, $_POST, $_GET) as $_request) {
foreach($$_request as $_key => $_value) {
$_key{0} != '_' && $$_key = daddslashes($_value);
}
} 是等价的显然前者使用的内存数量要小于后者