AI编程助手
AI免费问答

php 字符串怎么转换成if条件语句

  2016-06-13 12:24   1435浏览 原创

php 字符串如何转换成if条件语句
例如:$condition = "2 == 2 && 3 == 5";
            if ($condition) {
                echo 1;
            }
怎样把$condition 转换成if可识别的条件?直接这样判断会当成字符串常量,值为true
------解决思路----------------------

 if (eval("return $condition;")) {


------解决思路----------------------
引用:
        $condition = "2=1 && (snb === snb ------解决思路---------------------- snb === hfu)"; if (eval("return $condition;")) { echo 1; }else { echo 2; } if (2=1 && ('snb' === 'snb' ------解决思路---------------------- 'snb' === 'hfu')) { echo 3; }呃 第一段的$condition和第二段if里面的内容是等价的吧  只是一个是字符串,一个是正常的if条件。第二段运行没有问题的啊 第一段调用eval()会报一个常量未定义的错误,这里应该要转义?

你的本意是('snb' === 'snb' 
------解决思路----------------------
 'snb' === 'hfu')   但是 你却写成(snb === snb 
------解决思路----------------------
 snb === hfu)  连$符号都没有的变量,自然被理解成常量了,然而你并没有定义常量。
------解决思路----------------------
用变量转化一下,否则snb和hfu会被解释成常量。
$snb="snb";
$hfu="hfu";
    $condition = '2=1 && ($snb === $snb 
------解决思路----------------------
 $snb === $hfu)';
    if (eval("return $condition;")) {
        echo 1;
    }else {
        echo 2;
    }

php免费学习视频:立即学习
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。