基于存储的变量进行比较

时间:2018-03-21 18:12:00

标签: php mysql metaprogramming

也许有关于此的话题,但我找不到。

我在数据库中存储比较运算符和目标值,如:

$target_value_1 => 1000

$operator => greather_than_or_equal

有没有办法在变量中使用这些运算符,如:

if ($variable1 $operator $target_value_1){

    // Some code

}

使用PHP和MySQL。

由于

1 个答案:

答案 0 :(得分:1)

我不确定你在构建什么,但你可以通过简单地按照以下几行创建check($operator, $var1, $var2)函数来对其进行排序:

function check($operator, $val1, $val2) {
    switch ($operator) {
    case 'greather_than_or_equal':
        return $val1 >= $val2;
        break;
    case 'greather_than':
        return $val1 > $val2;
        break;
    case 'operator_name':
        //return your condition goes here;
        break;
    default:
        return false;
        break;
    }
}

并使用它:if (check($operator, $value1, $value2)) { /* your code */ }