我们如何解析在if语句中使用的字符串条件

时间:2016-04-21 04:40:05

标签: php cakephp if-statement

您好我有一个字符串变量(我可以从其他来源获得)"$abc=='xyz' AND $yza == 'lmn'" ..等等。有什么办法可以把整个字符串放在IF语句中来测试条件。像

$condition = "$abc=='xyz' AND $yza == 'lmn'"; 
  if($condition)
   //do something..
  else
   //do something...

感谢。

2 个答案:

答案 0 :(得分:1)

eval()将会执行您之后所做的事情,但这不是一个好主意。

$condition = "$abc=='xyz' AND $yza == 'lmn'"; 
if(eval($condition))
//do something..
else
//do something...

答案 1 :(得分:1)

使用eval()的更正确的语法应该是(也许其他人需要它):

$condition = "return $abc=='xyz' AND $yza == 'lmn';"; 
if (eval($condition))
    //do something..
else
    //do something...

因为在eval()内,条件应以;结尾。通常它以return开头。