PHP回声错误 – 相同的回声,很少工作,很少没有

我有一个非常奇怪的问题:在下面列出的代码中,4个echo几乎是相同的,但只有最后一个正常工作(前两个回声只打印加/减的答案,没有文本).
这是代码

    <html>
<body>

Welcome <?PHP echo $_POST["name"]; ?><br>
Your email address is: <?PHP echo $_POST["email"]; ?><br>

<?PHP $sk1 = $_POST["sk1"];
$sk2 = $_POST["sk2"];
$veiksm = $_POST["veiksmas"];

switch($veiksm){
    default:
        echo "Jus nepasirinkote veiksmo";
        break;

    case "sud":
        echo "Sudeties veiksmo rezultatas: " .$sk1 + $sk2;
        break;

    case "ati":
        echo "Atimties veiksmo rezultatas: " .$sk1 - $sk2;
        break;

    case "dal":
        echo "Dalybos veiksmo rezultatas: " .$sk1 / $sk2;
        break;

    case "dau":
        echo "Daugybos veiksmo rezultatas: " .$sk1 * $sk2;
        break;
}

?>
</body>
</html> 

解决方法:

您必须在计算周围加上括号,如:

echo "Atimties veiksmo rezultatas: " . ($sk1 - $sk2);
                                     //^ See here  ^

否则你可以想象你的echo语句如下:

"Sudeties veiksmo rezultatas: 17" + 5 // Same as 0 + 5, because the string is casted to int which is 0

*和/也可以,因为它们首先得到评估

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...