我正在使用eval使用字符串值进行决策。当我尝试比较两个字符串时,它将引发使用未定义常量的异常。请帮助任何人这有什么问题。
$condition ="no != no";
echo eval("return $condition;");
抛出错误,如
Notice: Use of undefined constant no - assumed 'no' in index.php : eval()'d code on line 1
答案 0 :(得分:2)
no应该是像$no != $no
这样的变量,其中$no
应该具有预定义的值,或者应该是如下所示的字符串:
$condition ="'no' != 'no'";
echo eval("return $condition;");
但是请注意,在任何情况下都不要使用eval,因为这确实是一个糟糕的选择。请避免这种情况,您可以使用以下代码来满足您的要求:
return ('no' != 'no') ? false: true;
希望它会清除您。