本文整理汇总了PHP中Rule::test方法的典型用法代码示例。如果您正苦于以下问题:PHP Rule::test方法的具体用法?PHP Rule::test怎么用?PHP Rule::test使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Rule
的用法示例。
在下文中一共展示了Rule::test方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: test
/**
* Method to test for a valid color in hexadecimal.
*
* @param object &$element The SimpleXMLElement object representing the <field /> tag for the form field object.
* @param mixed $value The form field value to validate.
* @param string $group The field name group control value. This acts as as an array container for the field.
* For example if the field has name="foo" and the group value is set to "bar" then the
* full field name would end up being "bar[foo]".
* @param object &$input An optional Registry object with the entire data set to validate against the entire form.
* @param object &$form The form object for which the field is being tested.
* @return boolean True if the value is valid, false otherwise.
*/
public function test(&$element, $value, $group = null, &$input = null, &$form = null)
{
// If the field is empty and not required, the field is valid.
$required = (string) $element['required'] == 'true' || (string) $element['required'] == 'required';
if (!$required && empty($value)) {
return true;
}
// Test the value against the regular expression.
if (!parent::test($element, $value, $group, $input, $form)) {
return false;
}
// Check if we should test for uniqueness.
$unique = (string) $element['unique'] == 'true' || (string) $element['unique'] == 'unique';
if ($unique) {
// Get the extra field check attribute.
$userId = $form instanceof Form ? $form->getValue('id') : '';
$duplicate = User::all()->whereEquals('email', $value)->where('id', '<>', (int) $userId)->total();
if ($duplicate) {
return false;
}
}
return true;
}