Php 测试输入是否冗余?

Php 测试输入是否冗余?,php,Php,我知道我会因为这个问题被严重否决,你们很多专家都会认为这个问题是个蹩脚的问题,但我真的被这个问题难住了。我已经广泛地搜索了PHP函数test_input()的功能,但是web上的可用信息非常稀少。我的问题是,在下一行中使用preg_match时,为什么需要一个test_输入函数来验证用户输入??Preg_match本身就足够了。它是一个独立的函数,不需要额外的过滤器。那么为什么preg_与test_输入匹配呢?测试输入不是冗余的吗?但更重要的是,它究竟如何净化用户输入 if (empty($_P

我知道我会因为这个问题被严重否决,你们很多专家都会认为这个问题是个蹩脚的问题,但我真的被这个问题难住了。我已经广泛地搜索了PHP函数test_input()的功能,但是web上的可用信息非常稀少。我的问题是,在下一行中使用preg_match时,为什么需要一个test_输入函数来验证用户输入??Preg_match本身就足够了。它是一个独立的函数,不需要额外的过滤器。那么为什么preg_与test_输入匹配呢?测试输入不是冗余的吗?但更重要的是,它究竟如何净化用户输入

if (empty($_POST["email"]))
{
    $emailErr = "Email is required";
}
else
{
    $email = test_input($_POST["email"]);
    // check if e-mail address syntax is valid
    if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email))
    {
        $emailErr = "Invalid email format";
    }
}

我们不知道
test\u input
做了什么,也不知道为什么这段代码的作者觉得有必要包含它。test\u input()不是php内置函数,我想你需要的可能是穷人
filter\u var($\u POST['email',filter\u SANITIZE\u email)
似乎是替代然后他们想知道为什么w3schools的名声这么差。@Rufinus如果是
test\u input
函数,那么它是PHP历史上在许多级别上最糟糕的代码之一。这说明了什么。Jason12,不要在这上面浪费另一个脑细胞,这是废话,纯粹而简单。@deceze:我觉得特别有趣的是w3schools上的示例代码,除了函数的内容(只建议放错位置的安全性)之外,在实际调用下面定义函数只是BS