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


Posted in PHP onAugust 02, 2017

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

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf8">
<title>简单的计算器(3water.com)</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>

运行结果如下图:

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

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

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

科学计算器在线使用_高级计算器在线计算:
http://tools.3water.com/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.3water.com/jisuanqi/jsq

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

PHP 相关文章推荐
两种php调用Java对象的方法
Oct 09 PHP
按上下级层次关系输出内容的PHP代码
Jul 17 PHP
PHP Session 变量的使用方法详解与实例代码
Sep 11 PHP
从PHP $_SERVER相关参数判断是否支持Rewrite模块
Sep 26 PHP
一个严格的PHP Session会话超时时间设置方法
Jun 10 PHP
wordpress安装过程中遇到中文乱码的处理方法
Apr 21 PHP
php正则表达式获取内容所有链接
Jul 24 PHP
PHP中对数组的一些常用的增、删、插操作函数总结
Nov 27 PHP
PHP数组编码gbk与utf8互相转换的两种方法
Sep 01 PHP
Laravel中Facade的加载过程与原理详解
Sep 22 PHP
PHP日志LOG类定义与用法示例
Sep 06 PHP
php创建多级目录与级联删除文件的方法示例
Sep 12 PHP
利用php操作memcache缓存的基础方法示例
Aug 02 #PHP
Yii 2.0实现联表查询加搜索分页的方法示例
Aug 02 #PHP
YII框架中使用memcache的方法详解
Aug 02 #PHP
PHP编程获取图片的主色调的方法【基于Imagick扩展】
Aug 02 #PHP
php7安装mongoDB扩展的方法分析
Aug 02 #PHP
Yii2 队列 shmilyzxt/yii2-queue 简单概述
Aug 02 #PHP
基于win2003虚拟机中apache服务器的访问
Aug 01 #PHP
You might like
PHP实现根据图片色界在不同位置加水印的方法
2015/08/08 PHP
PHP常见错误提示含义解释(实用!值得收藏)
2016/04/25 PHP
laravel csrf排除路由,禁止,关闭指定路由的例子
2019/10/21 PHP
如何让动态插入的javascript脚本代码跑起来。
2007/01/09 Javascript
如何让页面在打开时自动刷新一次让图片全部显示
2012/12/17 Javascript
鼠标放在图片上显示大图的JS代码
2013/03/26 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
浅谈javascript的调试
2015/01/28 Javascript
JQuery判断radio(单选框)是否选中和获取选中值方法总结
2015/04/15 Javascript
jquery实现简单的轮换出现效果实例
2015/07/23 Javascript
探讨JavaScript语句的执行过程
2016/01/28 Javascript
Bootstrap CDN和本地化环境搭建
2016/10/26 Javascript
VUE JS 使用组件实现双向绑定的示例代码
2017/01/10 Javascript
jquery.param()实现数组或对象的序列化方法
2018/10/08 jQuery
通过高德地图API获得某条道路上的所有坐标用于描绘道路的方法
2020/08/24 Javascript
python with statement 进行文件操作指南
2014/08/22 Python
Scrapy-redis爬虫分布式爬取的分析和实现
2017/02/07 Python
python中通过预先编译正则表达式提高效率
2017/09/25 Python
Python+matplotlib+numpy实现在不同平面的二维条形图
2018/01/02 Python
python使用筛选法计算小于给定数字的所有素数
2018/03/19 Python
Python3连接SQLServer、Oracle、MySql的方法
2018/06/28 Python
Pandas删除数据的几种情况(小结)
2019/06/21 Python
django中SMTP发送邮件配置详解
2019/07/19 Python
Django 开发环境与生产环境的区分详解
2019/07/26 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
英国性感内衣和睡衣品牌:Bluebella
2018/01/26 全球购物
H&M旗下高端女装品牌:& Other Stories
2018/05/07 全球购物
怎样声明子类
2013/07/02 面试题
Shell脚本如何向终端输出信息
2014/04/25 面试题
资产评估专业大学生求职信
2013/09/29 职场文书
舞蹈毕业生的自我评价
2014/03/05 职场文书
社区矫正工作方案
2014/06/04 职场文书
副主任竞聘演讲稿
2014/08/18 职场文书
小学生思想品德评语
2014/12/31 职场文书
PostgreSQL将数据加载到buffer cache中操作方法
2021/04/16 PostgreSQL
PyQt5实现多张图片显示并滚动
2021/06/11 Python