<!DOCTYPE html>
<html>
<head>
<title>计算器简单实现</title>
<style type="text/css">
#container{
width: 800px;
height: 500px;
margin: 200px auto;
}
input{
width: 100px;
}
#result{
color: red;
}
select{
height: 20px;
width: 80px;
padding-left: 30px;
}
#btn{
color: blue;
}
</style>
</head>
<body>
<div id="container">
<form action="" method="post">
<input type="text" name="num1" placeholder="数字1">
<select name="sign">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select>
<input type="text" name="num2" placeholder="数字2">
<input type="submit" name="btn" value="点击计算">
</form>
<?php
/**
* 计算器简单实现
* @Author:hanqi_wk
* @DateTime :2017/9/28
*/
if (isset($_POST["btn"])) {
if (isNumRight($_POST["num1"])) {
$num1 = $_POST["num1"];
} else {
return;
}
if (isNumRight($_POST["num2"])) {
$num2 = $_POST["num2"];
} else {
return;
}
$sign = $_POST["sign"];
$result = 0;
switch ($sign) {
case "+":
$result = $num1 + $num2;
break;
case "-":
$result = $num1 - $num2;
break;
case "*":
$result = $num1 * $num2;
break;
case "/":
if ($num2 == 0) {
echo "被除数不能为0,请重新输入";
return;
}
$result = $num1 / $num2;
break;
default:
echo "输入有误请重新输入";
return;
}
echo "结果为:" . $result;
}
function isNumRight($num)
{
$preg = "/\d+$/";
if (!preg_match($preg, $num)) {
echo "输入数据有误,请重新输入";
return false;
}
return true;
}
?>
</div>
</body>
</html>