I have a sample code:
$messages = array(
array("mark" => "0 < {m} < 4.9", "message" => "BAD"),
array("mark" => "5 < {m} < 10", "message" => "GOOD"),
);
$m = 3;
$message = "";
foreach ($messages as $row) {
$condition = $row['mark'];
$condition = str_replace('{m}', $m, $condition);
$str = "$result = (bool)".$condition;
eval($str);
if($result) $message = $row['message'];
}
echo $message;
Result is BAD, but it show bug: Parse error: syntax error, unexpected '='
. How to ideas?