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实现框架(二)
Oct 09 PHP
?算你??的 PHP 程式大小
Dec 06 PHP
PHP zlib扩展实现页面GZIP压缩输出
Jun 17 PHP
php正则过滤html标签、空格、换行符的代码(附说明)
Oct 25 PHP
php判断页面是否是微信打开的示例(微信打开网页)
Apr 25 PHP
destoon二次开发模板及调用语法汇总
Jun 21 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(五)
Jun 23 PHP
php中Array2xml类实现数组转化成XML实例
Dec 08 PHP
php中使用gd库实现远程图片下载实例
May 12 PHP
详解PHP+AJAX无刷新分页实现方法
Nov 03 PHP
php版微信公众账号第三方管理工具开发简明教程
Sep 23 PHP
PHP设计模式之简单工厂和工厂模式实例分析
Mar 25 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 魔术方法使用说明
2009/10/20 PHP
PHP生成不同颜色、不同大小的tag标签函数
2013/09/23 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
php利用fsockopen GET/POST提交表单及上传文件
2017/05/22 PHP
js获取事件源及触发该事件的对象
2013/10/24 Javascript
javascript引擎长时间独占线程造成卡顿的解决方案
2014/12/03 Javascript
jQuery实现动态添加和删除一个div
2015/08/12 Javascript
JS更改select内option属性的方法
2015/10/14 Javascript
基于jQuery通过jQuery.form.js插件实现异步上传
2015/12/13 Javascript
【经验总结】编写JavaScript代码时应遵循的14条规律
2016/06/20 Javascript
把普通对象转换成json格式的对象的简单实例
2016/07/04 Javascript
文本框只能输入数字的js代码(含小数点)
2016/07/10 Javascript
详细讲解JavaScript中的this绑定
2016/10/10 Javascript
微信小程序 progress组件详解及实例代码
2016/10/25 Javascript
js调用父框架函数与弹窗调用父页面函数的简单方法
2016/11/01 Javascript
AngularJS表格样式简单设置方法示例
2017/03/03 Javascript
node.js连接MongoDB数据库的2种方法教程
2017/05/17 Javascript
AngularJS全局警告框实现方法示例
2017/05/18 Javascript
JS中Safari浏览器中的Date
2017/07/17 Javascript
Vue项目分环境打包的实现步骤
2018/04/02 Javascript
vue动态路由:路由参数改变,视图不更新问题的解决
2019/11/05 Javascript
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
[54:02]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 IG vs VGJ.T
2018/04/03 DOTA
Python之dict(或对象)与json之间的互相转化实例
2018/06/05 Python
Python爬虫常用库的安装及其环境配置
2018/09/19 Python
python 弧度与角度互转实例
2020/04/15 Python
使用phonegap创建联系人的实现方法
2017/03/30 HTML / CSS
MySQL面试题目集锦
2016/04/14 面试题
计算机应用职专应届生求职信
2013/11/12 职场文书
中专生职业生涯规划书范文
2014/01/10 职场文书
爱国口号
2014/06/19 职场文书
2014年作风建设工作总结
2014/10/29 职场文书
居住证明范文
2015/06/17 职场文书
python tkinter模块的简单使用
2021/04/07 Python
Django一小时写出账号密码管理系统
2021/04/29 Python
MySQL实例精讲单行函数以及字符数学日期流程控制
2021/10/15 MySQL