微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐