首页 > 解决方案 > 大于和小于精确匹配值

问题描述

我一直在研究一个函数,验证是为了确保字段中的输入与定义的 $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 - 但没有任何效果。仅当我使用大于函数或小于函数进行验证时才有效。

标签: php

解决方案


如果需要严格验证,则需要使用运算符'===',更多信息在这里:PHP 相等(== 双等)和身份(=== 三等)比较运算符有何不同?

此外,您可以使用其他条件,因此,代码可能是这样的:

if ( intval($value) === $cash )
  echo "perfect";

或者

if ( intval($value) >= $cash )
  echo "perfect";

推荐阅读