Php 自动添加为数组的查询字符串

Php 自动添加为数组的查询字符串,php,Php,我刚刚注意到在我的服务器(Ubuntu 14.04/Apache 2.2)上使用$\u服务器全局变量有一个奇怪的行为 自从我得到一个特定的$\u服务器变量(例如$\u SERVER['HTTP\u ACCEPT']),url查询字符串(如果有)就会自动添加为每个变量值末尾的数组 表示我有以下GET请求: www.domaine.com/index.php?id=45&user=john 我得到: gzip, deflate, sdcharray(2) { ["id"]=> str

我刚刚注意到在我的服务器(Ubuntu 14.04/Apache 2.2)上使用$\u服务器全局变量有一个奇怪的行为

自从我得到一个特定的$\u服务器变量(例如$\u SERVER['HTTP\u ACCEPT']),url查询字符串(如果有)就会自动添加为每个变量值末尾的数组

表示我有以下GET请求:

www.domaine.com/index.php?id=45&user=john

我得到:

gzip, deflate, sdcharray(2) {
["id"]=>

    string(2) "45",
  ["user"]=>
  string(4) "john"
}
这个数组是从哪里来的? 它是由PHP、Apache生成的吗?如何摆脱它


感谢您的帮助。

这似乎是一个愚蠢的问题,但您确定
echo
语句正在这样做吗?它看起来像一个
var\u转储($\u GET)
输出。如果
HTTP\u ACCEPT\u ENCODING
中确实包含
var\u dump($\u GET)
的内容,那么您的服务器就出了问题。我会在你的代码中搜索任何
var\u dump
调用并注释它们,直到你找到错误为止。
$\u服务器['HTTP\u ACCEPT\u ENCODING']
中的内容来自头请求(请参阅:)第二,检查
var\u dump($\u SERVER['QUERY\u STRING'])
这就是它看起来的样子,你说得对。我的代码现在有点混乱(开发阶段),我刚刚在另一个php文件中发现了一个(讨厌的)var_转储,这导致了问题。案件结案。很抱歉给您带来不便:)@Duddy67这是在测试时使用
var_dump
而不是
echo
的另一个很好的理由(我可以看到您对阵列所做的)。它将输出
string(19)“gzip,deflate,sdch”
,很明显,第二次输出不是在这里发生的。
gzip, deflate, sdcharray(2) {
["id"]=>

    string(2) "45",
  ["user"]=>
  string(4) "john"
}