1、搭建一个简单的计算器界面
<html>
<head>
<title>我的计算器</title>
<script language="javascript">
function check(){
var num1val=document.getElementById("num1").value;
var num1va2=document.getElementById("num2").value;
//isNaN()判断是否值不是数字,如果不是数字则为真,否则为假。
if(isNaN(num1val) || isNaN(num1va2)){
window.alert("num1和num2必须是数值");
return false;
}
}
</script>
</head>
<body>
<h1>我的计算器</h1>
<form action="result.php" method="post" onsubmit="return check()">
num1:<input type="text" name="num1" id="num1"><br/>
num2:<input type="text" name="num2" id="num2"><br/>
oper:
<select name="oper">
<option value="+">+</option>
<option value="-">-</option>
<option value="*">*</option>
<option value="/">/</option>
</select><br/>
<input type="submit" value="计算">
</form>
</body>
</html>
在前端界面中,利用JavaScript对提交的数据进行校验。写一个check()方法。检验是否提交的数据都为数值,不符合要求则弹出提示框。isNaN()判断是否值不是数字,如果不是数字则为真,否则为假。
2、创建一个类,专门用于计算数值。
// 定义一个专门提供计算机计算的类
class OperServer{
public function getResult($num1,$num2,$oper){
switch($oper){
case "+":
return $num1+$num2;
break;
case "-":
return $num1-$num2;
break;
case "*":
return $num1*$num2;
break;
case "/":
return $num1/$num2;
break;
default:
echo "操作符有误";
}
}
}
3、创建一个类,输出计算结果。
此类用于获取前端传过来的数值,并进行校验是否设值,并创建一个新对象,传给计算类,就算完毕返回值并输出。
<?php
/**
* Created by PhpStorm.
* User: mazhulin
* Date: 2017/7/22
* Time: 18:06
*/
//isset 检验变量是否设值
//接收三个值
if(isset($_REQUEST['num1'])){
$num1=$_REQUEST['num1'];
}
if(isset($_REQUEST['num2'])){
$num2=$_REQUEST['num2'];
}
if(isset($_REQUEST['oper'])){
$oper=$_REQUEST['oper'];
}
//引入类 require_once
require_once "OperServer.class.php";
//创建一个对象
$operServer1 = new OperServer();
echo $operServer1->getResult($num1,$num2,$oper);
isset 检验变量是否设值 ;引入类方法 require_once