我的PHP代码有一个非常可怕的问题。如果我使用运算符“+”或“ - ”,程序不会向我显示完整的计算结果。 我想看到的(与运营商“*”和“/”一起使用): 1 + 3 = 4 我所看到的: 4 它与函数和if-queries中的代码完全相同(除了“+”而不是“/”)。PHP不会在/ var / log文件中给出错误。 我怎样才能巧妙地解决这个问题?
祝你好运!
我的代码:
<?php
function addition($a, $b) {
echo $a . "+" . $b . "=" . $a + $b;
}
function subtraktion($a, $b) {
echo $a . "-" . $b . "=" . $a - $b;
}
function multiplikation($a, $b) {
echo $a . "*" . $b . "=" . $a * $b;
}
function division($a, $b) {
echo $a . "/" . $b . "=" . $a / $b;
}
if (($_GET['op']) == "+") {
addition($_GET['azahl'], $_GET['bzahl']);
}
if (($_GET['op']) == "-") {
subtraktion($_GET['azahl'], $_GET['bzahl']);
}
if (($_GET['op']) == "*") {
multiplikation($_GET['azahl'], $_GET['bzahl']);
}
if (($_GET['op']) == "/") {
division($_GET['azahl'], $_GET['bzahl']);
}
?>
答案 0 :(得分:2)
添加括号,因为默认运算符优先级不能满足您的需要:
function addition($a,$b)
{
echo(($a."+".$b."=").($a+$b));
}
答案 1 :(得分:2)
您可以对参数进行转换(string)
并封装在括号中:
function addition($a,$b)
{
echo (string)$a."+".(string)$b."=".($a+$b);
}
function subtraktion($a,$b)
{
echo (string)$a."-".(string)$b."=".($a-$b);
}
function multiplikation($a,$b)
{
echo (string)$a."*".(string)$b."=".($a*$b);
}
function division($a,$b)
{
echo (string)$a."/".(string)$b."=".($a/$b);
}