0
所以我有这个块的代码:
$age = 23;
$gender = 0;
$rules = "gender = 0 AND (age >= 2 AND age <= 20)";
$find = array(
' = ',
'age',
'gender'
);
$replace = array(
' === ',
'$age',
'$gender'
);
$rules = str_replace($find, $replace, $rules);
print($rules);
if (eval('return' . $rules . ';')) {
return "You get coupon " . $coupon->couponID . "!";
} else {
return "Coupon " . $coupon->couponID . " is not for you!";
}
我所试图做的是使用的字符串变量作为我如果表达。这可能吗?或者有更好的方法来实现这一目标?
if($ rules)''怎么办? – arkascha
这是我的原始代码。它不起作用。始终返回true。 :( – RhanCandia
@arkascha - 由于'$ rules'不是'false'或'null',它总会返回'true'。 – Tigger