interface.php
<html> <head> <meta charset="utf-8" /> <title>这是一个简单的计算器</title> </head> <body> <h4>这是一个简单复杂化的计算器</h4> <hr/> <form action="operation.php" method="post" name="interface"> <table> <tr><td>请输入第一个数:</td><td><input type="text" name="num1" value="" /></td></tr> <tr><td>请选择运算符号:</td> <td><select name="symbol"> <option value="+">+</option> <option value="-">-</option> <option value="*">*</option> <option value="/">/</option> </select> </td> </tr> <tr><td>请输入第二个数:</td><td><input type="text" name="num2" value="" /></td></tr> <tr> <td><input type="submit" value="计算结果"/></td> </tr> </table> </form> <?php //empty判断接受值是否为空 isset判断接受值是否存在 if(isset($_GET['errno'])){ $erro=$_GET['errno']; if($erro==1){ echo "<br><font size='4' color='red'>输入的不是数字或者为空,请重新输入!</font>"; } } //判断一个整数变量是否存在 if(isset($_GET['sum'])){ $sum=$_GET['sum']; echo "<br><font size='3' color='red'>运算结果是".$sum."</font>"; } //判断一个数是否存在 if(isset($_GET['dividend'])){ $dividend=0; echo "<br><font size='3' color='red'>被除数不能为".$dividend."</font>"; } ?> </body> </html>
operation.php
<meta http-equiv="content-type" content="text/html;charset=utf-8"> <?php require_once "operation.class.php"; $num1=$_POST['num1']; $num2=$_POST['num2']; $symbol=$_POST['symbol']; //把下面的运算封装成一个运算类 $oper1=new Oper(); $sum=$oper1->operation($num1,$num2,$symbol); header("location:interface.php?sum=$sum"); ?>
operation.class.php
<?php //一个计算器运算的类 require_once "operation.php";//引用一个文件 class Oper{ function operation($num1,$num2,$symbol){ //判断是否是数字is_numeric if( (is_numeric($num1) && is_numeric($num2)) ){ if($symbol=='+'){ $sum=$num1+$num2; } if($symbol=='-'){ $sum=$num1-$num2; } if($symbol=='*'){ $sum=$num1*$num2; } if($symbol=='/'){ if($num2==0){ header("location:interface.php?dividend=$num2"); exit(); }else{ $sum=$num1/$num2; } } return $sum; }else{ header("location:interface.php?errno=1"); exit(); } } } ?>
界面图