请问,可以这样过滤 $_POST 请求吗?

2022-05-11 11:14:11 +08:00
 wfdaj

循环过滤,但只获得了最后一条?-_-"

function request(string $key)
{
    $method = strtoupper($_SERVER['REQUEST_METHOD']);
    $data = [];

    if ($method === "GET") {
        foreach ($_GET as $key => $value) {
            $data[$key] = escape($value);
        }
    } elseif ($method === "POST") {
        foreach ($_POST as $key => $value) {
            $data[$key] = escape($value);
        }
    }

    return $data[$key];
}

输出结果:

Array
(
    [email] => 11111111
    [username] => 11111111
    [password] => 11111111
)
2161 次点击
所在节点    PHP
8 条回复
fuchish112
2022-05-11 11:19:07 +08:00
为啥不是 return $data ?
sadfQED2
2022-05-11 11:22:55 +08:00
为啥不直接用$_REQUEST?
yEhwG10ZJa83067x
2022-05-11 11:32:03 +08:00
你贴出的输出结果有啥问题吗?
zuokanyunqishi
2022-05-11 12:17:57 +08:00
变量覆盖了?传进来的 key ,循环里的 key ?
westoy
2022-05-11 12:29:23 +08:00
因为上下两个 foreach 都把 key 给改到了最后一个键啊
msojocs
2022-05-11 12:48:18 +08:00
直接 `return escape($_REQUEST[$key]);` ?
feiffy
2022-05-11 12:50:28 +08:00
为啥不是 return $data ?
wfdaj
2022-05-11 13:26:01 +08:00
感谢,断断续续自学,一直是新手中......😂

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/852149

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX