如何使用变量作为运算符?

Jor*_*rdy 1 php variables operators

我怎样才能做到这一点?

$v1=105;
$v2=90;
if ($value=='subtraction'){
    $operator='-';
}else{
    $operator='+';
}

$new_value=$v1.$operator.$v2;
Run Code Online (Sandbox Code Playgroud)

所以应该返回105-90 = 15或105 + 90 = 195.但是如何将$ operator变量用作运算符?例如,这不起作用:

eval("$new_value=$v1".$operator."$v2");
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助!

Roc*_*mat 5

我建议要这样做,但要使用eval,你必须这样做:

// You need to escape the $ in $new_value
eval("\$new_value = $v1 $operator $v2");
Run Code Online (Sandbox Code Playgroud)

我建议改为做这样的事情(即:不要对运算符使用变量,只需进行计算):

$v1=105;
$v2=90;
if ($value=='subtraction'){
    $new_value= $v1 - $v2;
}else{
    $new_value= $v1 + $v2;
}
Run Code Online (Sandbox Code Playgroud)