我正在PHP中创建验证类。我想在一个数组中验证两个项目,并且由于某种原因它只验证第一个项目。我称之为:
Form::validate(array('user' => 'required', 'pass' => 'required'), 'login');
,功能是
public static function validate($rules, $form)
{
foreach ($rules as $rule => $val) {
if ($val === 'required') {
if (empty($_POST[$rule])) {
if (isset($_POST[$form])) {
self::$_error = Error::set('All fields are required. ' . $rule);
echo self::$_error;
return false;
}
} else {
return true;
}
}
}
}
我的问题是如何验证一个数组中的两个项目?
答案 0 :(得分:3)
将return true
移到最后,以便只有在所有内容都有效时才会运行。
foreach (...) {
if (...) {
return false;
}
}
return true;