在PHP中的变量中有一个条件

在PHP中的变量中有一个条件,php,variables,if-statement,conditional-statements,Php,Variables,If Statement,Conditional Statements,我将一个条件作为字符串传递给我的方法,我希望在类似这样的if语句中使用它,但它似乎不起作用 // $condition could be a > or < or == etc... if (!( $field $condition $value )) { //code here } /$条件可以是>或”: 返回$field>$value; case“这是个糟糕的主意。处理这个问题的最好方法是使用switch语句 switch ($condition) {

我将一个条件作为字符串传递给我的方法,我希望在类似这样的if语句中使用它,但它似乎不起作用

// $condition could be a > or < or == etc...
if (!( $field $condition $value )) {
         //code here
}
/$条件可以是>或<或==等。。。
如果(!($字段$条件$值)){
//代码在这里
}
有没有一种方法可以在PHP中实现这一点。我尝试过将$condition用花括号括起来,但不起作用


提前多谢

这是个糟糕的主意。处理此问题的最佳方法是switch语句

switch ($condition) {
    case ">":
        return $field > $value;
    case "<"
        return $field < $value;
    default:
        return false;
}
开关($condition){
案例“>”:
返回$field>$value;

case“这是个糟糕的主意。处理这个问题的最好方法是使用switch语句

switch ($condition) {
    case ">":
        return $field > $value;
    case "<"
        return $field < $value;
    default:
        return false;
}
开关($condition){
案例“>”:
返回$field>$value;

case“不建议将条件作为字符串传递,这可能会导致严重的安全漏洞


我建议您更改体系结构,或者在交换机案例之外使用某种枚举(可能对您有所帮助)。

不建议将条件作为字符串传递,否则可能会导致严重的安全漏洞


我建议你改变你的体系结构,或者在切换案例之外使用某种枚举(可以帮助你)。

你说的“条件作为字符串”是什么意思?你能说明那些值是什么吗?你的意思是
$condition='=';
?这里可以使用
eval
,但不推荐使用。
切换($condition){…}
“我正在将一个条件作为字符串传递给我的方法”…我99%确定会有更好的方法来处理此问题。可能与“条件作为字符串”的含义重复?您能显示这些值是什么吗?您的意思是
$condition='=';
?这里可以使用
eval
,但不建议这样做。
switch($condition){…}
“我正在将条件作为字符串传递给我的方法”…我99%确信会有更好的方法来处理此问题。可能重复的是,我的第一个选择是使用开关,但我想保存一些代码行。此方法的实现允许设计者以简单的方式在表中添加类。没有外部用户将访问或输入任何数据,但将其视为外部用户我会的。因为从现在起几个月后你仍然会理解这段代码是的,@Marco,听Martijn说。总有一天,有人会在编写这段代码时没有意识到其中的含义,然后他们会允许输入一些未经认可的用户输入。突然,你成了equifax,你所有的数据库都属于他们。是的,我的第一个选择是使用切换,但我想保存一些代码行。实现此方法是为了让设计者能够以简单的方式在表中添加类。外部用户永远不会访问或输入任何数据,但请将其视为有一天外部用户会访问或输入的数据。因为从现在起,几个月后您仍能理解此代码是的,@Marco,请听Martijn的话是的,有人正在编写这段代码,但没有意识到其中的含义,然后他们会允许一些未经认可的用户输入。突然之间,你成了equifax,你的所有数据库都属于他们。