这可能吗?
$var_1 = 1;
$var_2 = 10;
$comparison = '>';
if($var_1 $comparison $var_2) {
// do something...
}
现在的语法无效,但是有办法吗?
最佳答案
不是本机的(当然eval
除外)。您将需要自己评估各种表达式。构建包装函数,并使用switch
语句。或对于非表达式比较的简单映射:
$var_1 = 1;
$var_2 = 10;
$comparison = '>';
$map = array(
">" => $var_1 > $var_2,
"<" => $var_1 < $var_2,
"==" => $var_1 == $var_2,
"!=" => $var_1 != $var_2,
);
if($map[$comparison]) {
// do something...
}