PHP实现的简单在线计算器功能示例

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP实现的简单在线计算器功能。分享给大家供大家参考,具体如下:

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf8">
<title>简单的计算器(www.jb51.net)</title>
</head>
<body>
<?php
//如果用户单击了计算按钮才存在表单变量,才能接收表单数据和对数据进行验证
//以下if语句判断是否将表单中的两个操作数提交到本页面,如果没有则不执行
if(isset($_POST["num1"]) && isset($_POST["num2"])){
if(empty($_POST["num1"])){
//如果第一个第一个操作数为空输出错误信息,并停止计算
echo "<font color='red'>第一个操作数不能为空</font>";
unset($_POST["sub"]);
//取消表单中的提交变量,后面计算判断时将不执行
}
if(empty($_POST["num2"])){
//如果第二个第一个操作数为空输出错误信息,并停止计算
echo "<font color='red'>第二个操作数不能为空</font>";
unset($_POST["sub"]);
//取消表单中的提交变量,后面计算判断时将不执行
}
$oper=$_POST["oper"];
//获取操作符号
$num1=$_POST["num1"];
//获取第一个操作数
$num2=$_POST["num2"];
//获取第二个操作数
if($oper == "/"){
if($num2 == 0){
echo "<font color='red'>0不能作为除数使用</font>";
unset($_POST["sub"]);
}
}
}
?>
<!--以HTML表格的形式输出计算器的用户操作界面-->
<table border="1" align="center" width="400">
<form action="" method="post"> <!--使用POST方法提交给本页面-->
<caption><h2>简单的计算器</h2></caption>
<tr>
<td><input type="text" size="10" name="num1" value="<?php if(!empty($num1)){echo $num1;}?>"></td>
<td>
<select name="oper">
<option value="+" <?php if($oper == "+"){echo "selected";}?>>+</option>
<option value="-" <?php if($oper == "-"){echo "selected";}?>>-</option>
<option value="*" <?php if($oper == "*"){echo "selected";}?>>*</option>
<option value="/" <?php if($oper == "/"){echo "selected";}?>>/</option>
</select>
</td>
<td><input type="text" size="10" name="num2" value="<?php if(!empty($num2)){echo $num2;}?>"></td>
<td><input type="submit" name="sub" value="计算"></td>
</tr>
<?php
/**通过表单传过来的$_POST["sub],判断是否单击了计算按钮
来决定以下计算是否执行以及是否输出计算结果**/
if(isset($_POST["sub"]) && !empty($_POST["sub"])){
$sum = 0; //声明一个存放计算结果的变量,初始值为0
echo $sum;
//使用switch语句,通过表单选择的操作符来决定执行哪种运算
switch($oper){
case "+":
$sum = $num1+$num2;
break;
case "-":
$sum = $num1-$num2;
break;
case "*":
$sum = $num1*$num2;
break;
case "/":
$sum = $num1/$num2;
break;
}
//以下的三行是在表格的新行中输出计算结果
echo "<tr><td colspan='4' align='center'>";
echo "计算结果:$num1 $oper $num2 = $sum";
echo "</td></tr>";
}
?>
</form>
</table>
</body>
</html>

运行结果如下图:

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.jb51.net/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.jb51.net/jisuanqi/jsq

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数学运算技巧总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP数组传递是值传递而非引用传递概念纠正

在调用函数时通过将PHP数组作为实参赋给形参,在函数中修改,并不会影响到数组本身。 说明此过程中的传递为值传递,数组变量并非是指向此数组本身的引用,PHP数组本身以值的形式存在,同时形参...

处理php自动反斜杠的函数代码

复制代码 代码如下://处理php自动反斜杠 if (get_magic_quotes_gpc()) { function stripslashes_deep($value) { $va...

$_GET['goods_id']+0 的使用详解

目的: 为了防止sql注入,tid,goods_id都是正整数类型,防止人为了在后面追加 ?tid=1 or 1 这样的语句.原理: 不管你的参数多么险恶,+0后都老老实实变成数值类型...

PHP+Oracle本地开发环境搭建方法详解

安装instant client 首先,是从https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html下载...

php中socket通信机制实例详解

本文实例讲述了php中socket通信机制及用法。分享给大家供大家参考。具体分析如下: 一、socket是什么 什么是socket 所谓socket通常也称作"套接字",用于描述ip地址...