例如,我有一个注册功能,需要用户输入他们的"用户名","电子邮件地址"和"密码".
我需要检查用户的所有参数,这不是null,而且,我需要检查它们的输入长度是否足以存储在db中.此外,我需要检查数据库中是否有任何重复的用户名和电子邮件.此外,我需要检查电子邮件地址是否是有效的电子邮件格式.
只创建一个足够简单的寄存器功能,我需要做很多检查.是否有任何简短的手检查一些基本的东西?例如,这不是为了提高生产率.
你需要检查它,因为它无法检查自己.
PHP有许多有用的功能来帮助...
isset()isset()确保设置GET/POST变量.这些缺失通常只是由人们修修补补造成的.
if ( ! isset($_POST['email'])) {
$this->addError('You did not supply your email');
}
Run Code Online (Sandbox Code Playgroud)
trim() 和 empty()trim()并empty()确保有人输入除空白之外的某些文本.注意,这empty()是一个构造,必须在变量上调用,而不是trim()直接返回的字符串(我的猜测是因为它想要检查内存中的块,而不是堆栈上的值).
$email = trim($_POST['email']);
if (empty($email)) {
$this->addError('You didn\'t type any non whitespace characters');
}
Run Code Online (Sandbox Code Playgroud)
当然,使用最终用户会理解的更好的错误.
这也经常使用,你可以做一个实用程序功能.
filter_var()您可以使用它filter_var()来验证事物,例如验证电子邮件,IP和整数.
if ( ! filter_var($email, FILTER_VALIDATE_EMAIL)) {
$this->addError('You did not enter a valid email');
}
Run Code Online (Sandbox Code Playgroud)
正则表达式可以自己做很多事情,例如检查有效的字符,模式和长度.
if ( ! preg_match('/^\w{4,12}\z/', $username)) {
$this->addError('You did not enter a valid email');
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
68 次 |
| 最近记录: |