【问题标题】:PHP - use variable as operatorPHP - 使用变量作为运算符
【发布时间】:2011-06-10 06:43:44
【问题描述】:

我想得到这个:

if($a[2] > $b[2] && $c[2] < 3) echo "bingo";

但是因为条件是从数据库中检索的,所以我需要将整个条件放入一个变量中,然后以某种方式将变量改回一个条件。我认为这会是这样的:

$condition = "$a[2] > $b[2] && $c[2] < 3";
$evaledCondition = eval("$condition;");
if($evaledCondition) echo "bingo";

显然它没有工作。我错过了什么吗?

【问题讨论】:

  • 小心使用eval...尤其是用户提供的数据。

标签: php logical-operators


【解决方案1】:

eval() 返回 NULL,除非 return 是 在评估代码中调用

   $evaledCondition = eval("return $condition;");

【讨论】:

    猜你喜欢
    • 2011-01-16
    • 2014-10-11
    • 1970-01-01
    • 2021-04-21
    • 2011-08-12
    • 1970-01-01
    • 1970-01-01
    • 2016-04-06
    • 1970-01-01
    相关资源
    最近更新 更多