当我回显 $_GET 变量的内容时,有两个值甚至不在链接中。
array (
'__utma' => '118264987.369913698.1357785187.1358515273.1358367728.77',
'__utmz' => '118254987.1328042362.21.9.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=(not provided)',
)
如何可靠地去除 $_GET 变量中所有这些无用数据?
最佳答案
您可以像这样删除“有问题的”数组键:
// only use the keys that we want
$keys = preg_grep('/^__utm.$/', array_keys($_GET), PREG_GREP_INVERT);
// get the values that belong to those keys
$values = array_intersect_key($_GET, array_flip($keys));
它删除(或者更确切地说跳过)以 __utm
开头的键并且后跟一个字符。
顺便说一句,您可以将模式更改为更具限制性,例如:
^__utm[az]$
这将仅删除 __utma
和__utmz
但不是__utmx
例如。
关于php - 如何从 $_GET 参数中删除 "__utma"和 "__utmz"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14411130/