我知道我会因为这个问题而被严厉投票,你们许多专家认为这个问题是一个蹩脚的问题,但我真的很难过这个问题。我已经广泛搜索了PHP函数test_input()的功能,但是网络上的可用信息非常稀少。我的问题是,当你打算在下一行使用preg_match时,为什么还需要一个test_input函数来验证用户输入? Preg_match本身就足够了。这是一个独立的功能,不需要额外的过滤器。那么为什么要用test_input作为preg_match的前言呢? test_input不是多余的吗?但更重要的是,它究竟如何消除用户输入?
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";
}
}