-2

在我的php.ini我有register_globals=Off

但如果我访问

`/testing/testing.php?abc=19`

然后abc=19使用 显示 的值echo $_REQUEST['abc']
问题是为什么我仍然可以访问abc变量的值?

Note: I am using XAMPP.

4

2 回答 2

5

你在问为什么你可以给予register_globals=Off并且$_REQUEST['abc']会被设置。这与工作方式无关register_globals

register_globals使用 URL 键的名称设置全局变量。因此,在这种情况下,您可以这样做echo $abc;,如果启用,代码会正常工作,如果register_globals禁用则会导致错误。

$_REQUEST(like $_GETand $_POST) 是一个超级全局变量,无论你给出什么设置都可以使用。

于 2013-12-07T08:50:15.757 回答
2

即使关闭/打开register_gloabls$_GET 和 $_POST 将具有来自请求的参数

当你设置register_globals=On

请求像http://www.example.com/?abc=1&temp=3

然后 php 将创建具有名称的变量,abctemp分别分配值 1,3。

于 2013-12-07T08:56:07.680 回答