如何从字符串中生成条件语句

时间:2012-06-20 20:56:58

标签: php string variables conditional

这有可能吗?我们的想法是:

if ($some_statement) { ... }

其中$ some_statement变量是一个字符串,如下所示:

$some_statement = ' $day == "Monday" && $weather == "sunny" ';

我用花括号和eval函数进行了一些实验,但无法使用。谢谢你们,你摇滚!

2 个答案:

答案 0 :(得分:2)

您可以使用eval,但请记住,字符串中的语句必须是完整的PHP语句。

$condition = 'return $day == "Monday" || $day == "Sunday";';
if (eval($condition)) { ... }

答案 1 :(得分:2)

If (eval($some_statement)) {

应该有用。

但不要这样做,除非你知道自己在做什么,从你的问题判断,你不知道。

评估字符串中的代码非常危险,并且很容易造成严重的安全漏洞。