php实现计算器
PHP 实现计算器的方法
基本实现思路
使用 HTML 表单提交数据到 PHP 脚本处理计算逻辑。创建一个简单的界面包含数字按钮、运算符和等号,通过 PHP 接收并处理用户输入。
代码实现
<?php
$result = 0;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$num1 = $_POST['num1'];
$num2 = $_POST['num2'];
$operator = $_POST['operator'];
switch ($operator) {
case '+':
$result = $num1 + $num2;
break;
case '-':
$result = $num1 - $num2;
break;
case '*':
$result = $num1 * $num2;
break;
case '/':
$result = $num2 != 0 ? $num1 / $num2 : "除数不能为零";
break;
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>PHP 计算器</title>
</head>
<body>
<form method="post">
<input type="number" name="num1" required>
<select name="operator">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="number" name="num2" required>
<button type="submit">=</button>
<span><?php echo $result; ?></span>
</form>
</body>
</html>
高级功能扩展
添加更多数学运算如平方根、幂运算等。改进界面使用按钮式输入而非纯表单。
<?php
$display = "";
if (isset($_POST['btn'])) {
$btn = $_POST['btn'];
if ($btn == 'C') {
$display = "";
} elseif ($btn == '=') {
$display = eval("return $display;");
} else {
$display .= $btn;
}
}
?>
<form method="post">
<input type="text" name="display" value="<?php echo $display; ?>" readonly>
<!-- 数字按钮 -->
<button type="submit" name="btn" value="1">1</button>
<!-- 其他按钮... -->
<button type="submit" name="btn" value="C">C</button>
<button type="submit" name="btn" value="=">=</button>
</form>
安全注意事项
避免直接使用 eval 函数处理用户输入,可能导致代码注入。应对输入进行严格过滤和验证。使用 htmlspecialchars 防止 XSS 攻击。

$display = htmlspecialchars($display, ENT_QUOTES);
优化建议
使用 JavaScript 实现前端计算减少服务器负载,PHP 仅作为备用计算方式。添加历史记录功能存储计算结果到数据库。实现科学计算器功能包括三角函数、对数等运算。






