当连接php变量结果没有显示时。
$a = 5;
$b = 4;
$o = '+';
echo $a.$o.$b;
result showing 5+4; but i want show result 9
我怎么能这样做,任何人都可以帮助我。 提前致谢。
答案 0 :(得分:4)
'+'是一个字符串,所以如果你用数字连接它就会得到一个字符串。你必须调查价值:
if ($o == '+') {
echo $a + $b;
}
或者您可能想要的东西:
switch ($o) {
case "+":
echo $a + $b;
break;
case "-":
echo $a - $b;
break;
case "*":
echo $a * $b;
break;
case "/":
echo $a / $b;
break;
default:
echo 0;
}
答案 1 :(得分:1)
答案 2 :(得分:0)
您正在使用字符串“+”进行连接,因此您将获得一个字符串。您想要实际添加数字:
$o = $a + $b;
echo $o;
答案 3 :(得分:0)
concatenate连接字符串。如果你想要正常算术,只需使用加号:
$a = 5;
$b = 4;
echo ($a + $b)
答案 4 :(得分:0)
当你使用concatenate PHP自动设置参数STRING的类型时。你应该写$c=$b+$a; echo $c;
答案 5 :(得分:0)
你可以这样做:
function calc($a, $b, $o) {
$op = array('+', '-');
if (in_array($o, $op))
return eval('return '.(int)$a.$o.(int)$b.';');
return False;
}
$a = 5;
$b = 4;
$o = '+';
var_dump(calc($a, $b, $o));
但这非常难看,你应该重新考虑你的逻辑。