PHP:修剪superglobals中所有值的副作用($ _GET,$ _POST,$ _COOKIE,$ _REQUEST)

时间:2017-02-28 11:11:23

标签: php superglobals

我知道许多人认为用PHP编辑Superglobals是错误的。但我发现自己总是在我的webapp的每个控制器中修剪用户输入。为了一劳永逸地解决这个问题,我现在只需修剪这些Superglobals的所有值:

# trim ALL inputs
foreach ($_REQUEST as $key => $value) {
    $_REQUEST[$key] = trim($value);
}
foreach ($_COOKIE as $key => $value) {
    $_COOKIE[$key] = trim($value);
}
foreach ($_GET as $key => $value) {
    $_GET[$key] = trim($value);
}
foreach ($_POST as $key => $value) {
    $_POST[$key] = trim($value);
}

某些用户可能希望定义以空格开头或结尾的密码。除此之外,我无法想到修剪可能造成任何伤害的任何用例。

是否还有其他人试图修剪这些Superglobals并遇到我应该注意的奇怪副作用?

0 个答案:

没有答案