Как передать строку в условие if в php? - PullRequest
0 голосов
/ 11 апреля 2019

Я сохранил условия в строковом формате базы данных. Пример: ((25>1)||(25<1)) Как я могу передать эту строку в if оператор условия. Я пытался, но это не работает. Я использовал eval() функцию, но она не работает.

$con=eval("return ((25>1)||(25<1))");
if($con){
    echo "success";
}
else{
    echo "failed";
}

Ответы [ 2 ]

1 голос
/ 11 апреля 2019

Вы также можете сделать это:

echo (25 > 1 ? "success" : ( 25 < 1 ? "success" : "failed")) ;
0 голосов
/ 11 апреля 2019

В вашем eval() отсутствует точка с запятой.Строки, переданные в eval(), все еще должны быть действительным PHP, для которого потребуется ;.

$con = eval('return ((25>1)||(25<1));');
if($con) {
    echo 'success';
} else {
    echo 'failed';
}
...