我一直在研究一个函数,验证的目的是确保字段中的输入与定义的$ cash变量中的值完全相同,我成功使用了大于函数,但这允许值大于用户的值,因此它并不能准确地知道用户拥有什么,如果用户现金为300,则高于300的任何内容都是有效且可以的,但我希望验证严格按照值进行。
add_filter( 'gform_field_validation_9_7', 'custom_validationc', 10, 4 );
function custom_validationc( $result, $value, $form, $field ) {
$current_user = wp_get_current_user();
$number = $current_user->USERPIN2;
if ( $result['is_valid'] && $value < $number ) {
$result['is_valid'] = false;
$result['message'] = 'You must enter exactly the amount on your cash balance.';
}
return $result;
}
我的问题是我不希望通过使用大于函数来获得$ cash的确切值。而且我尝试了$ value === $ cash-但没有任何效果。仅当我使用大于功能或小于功能进行验证时有效。
答案 0 :(得分:1)
如果需要严格验证,则需要使用运算符'===',更多信息在这里:How do the PHP equality (== double equals) and identity (=== triple equals) comparison operators differ?
此外,您可以使用其他条件,因此代码可能像这样:
if ( intval($value) === $cash )
echo "perfect";
或
if ( intval($value) >= $cash )
echo "perfect";