使用字符串的数字操作

Din*_*nga 5 php

我有以下字符串.

$option = '+';
$value = '100';
Run Code Online (Sandbox Code Playgroud)

我想使用上面的参数创建新值.

例如: - $newValue = 222 + 100;

我怎么能用上面的参数呢?如下

$newValue = 222 $option $value; 
Run Code Online (Sandbox Code Playgroud)

xda*_*azz 10

function operate($a, $b, $opt){
    switch ($opt) {
        case '+':
            $ret = $a + $b;
            break;
        case '-':
            $ret = $a - $b;
            break;
        case '*':
            $ret = $a * $b;
            break;
        case '/':
            $ret = $a / $b;
            break;
        default:
            throw new Exception('Unsupported operation!');
    }
    return $ret;
}
Run Code Online (Sandbox Code Playgroud)

编辑

$option = '+';
echo operate(222,100,$option);
Run Code Online (Sandbox Code Playgroud)

  • 这就是为什么你的答案更好,我的答案只是懒惰:)并假设用户会得到它,:)我已经编辑了一点为你如何调用它但+1为它:) (2认同)

You*_*nse 5

$oldValue = 222;
switch ($option) {
  case '+':
  $newValue = $oldValue + $value;
  break;
}
Run Code Online (Sandbox Code Playgroud)


Can*_*ral 4

<?php

$option = '+';
$value = '100';

eval("\$newValue=" . 222 . $option . $value . ';'); 
var_dump($newValue);
Run Code Online (Sandbox Code Playgroud)

  • 这是非常危险的方式! (8认同)