条件字符串,即'>'对象,即>

时间:2016-08-12 14:33:21

标签: php

$gted = (object)'>';
if(200 $gted 300){
    echo 'wow it worked';
}else{
    echo 'no it didnt work';
}

我正在尝试转换'>'到条件>在if语句中使用。感谢。

1 个答案:

答案 0 :(得分:3)

这不会像你拥有它一样。变量不能直接解释为PHP中的运算符,另请参阅this question

即使你可以将变量解释为运算符,你在字符串'object'中的内容是而不是一个大于号的符号,它是一个HTML实体,当被解释为时作为一个HTML实体,产生看起来的东西,就像一个大于号的符号。

This question有一些答案,其中包括算术运算符的一些变通方法,可用于存储要在if语句中进行求值的结果。作为在这个答案中使用的一个例子,我借用了this answercreate_function部分{@ 3}},并使用了{{3}}

$operator = '+';
$func = create_function('$a,$b', "return \$a $operator \$b;");

$result = $func(5, 1);
echo $result;

如您所料,回声结果为6。您可以更改正在使用的运算符,以便伪匿名函数返回一个布尔值,然后您可以插入if语句:

$operator = '>';
$func = create_function('$a,$b', "return \$a $operator \$b;");

$result = $func(200, 300);
if($result) {
    echo 'wow it worked';
} else {
    echo 'no it didnt work';
}

除了我目前无法想象的极端和非常具体的情况外,我不认为这是一个好主意。