这是关于 PHP 全局变量的。这是否意味着全局变量通过 HTTP 请求简单地赋值(即:预先存在但没有值的变量),或者变量被“实例化”并赋值(即:脚本中不预先存在的变量) ? 我还没有看到任何解释的文字。
问问题
94 次
2 回答
1
register
使用 globals 仅仅意味着将各种请求变量注册为全局可用的过程。然而,在这种情况下,“注册”与“分配”或“设置”根本不同,因为全局变量固有地链接到它们的超全局键对应物(或“注册”作为别名),也许最好用这段代码总结:
// register_globals is on
$_POST["username"] === $username; // true
$username = "foo";
$_POST["username"] === $username; // *still* true
$_POST["username"] = "bar";
$_POST["username"] === $username; // *still* true
也就是改变一个会改变对应的超全局键。当然,不应该依赖这种行为——如果你一开始就在使用register_globals
,那你就做错了。
于 2012-09-04T00:36:50.527 回答
0
PHPregister_globals
将创建适当的全局变量并为其赋值。请注意,使用 可能是一个非常糟糕的主意register_globals
,因为它会带来安全风险。最好使用超全局数组$_POST
,$_GET
和$_COOKIE
.
于 2012-09-04T00:34:27.017 回答