Я сохранил условия в строковом формате базы данных. Пример: ((25>1)||(25<1)) Как я могу передать эту строку в if оператор условия. Я пытался, но это не работает. Я использовал eval() функцию, но она не работает.
((25>1)||(25<1))
if
eval()
$con=eval("return ((25>1)||(25<1))"); if($con){ echo "success"; } else{ echo "failed"; }
Вы также можете сделать это:
echo (25 > 1 ? "success" : ( 25 < 1 ? "success" : "failed")) ;
В вашем eval() отсутствует точка с запятой.Строки, переданные в eval(), все еще должны быть действительным PHP, для которого потребуется ;.
;
$con = eval('return ((25>1)||(25<1));'); if($con) { echo 'success'; } else { echo 'failed'; }