PHP实现简易计算器功能
作者:Roninwz 发布时间:2024-05-11 09:25:27
标签:PHP,计算器
本文实例为大家分享了PHP实现简易计算器的具体代码,供大家参考,具体内容如下
老规矩,先上GIF动态图,看个效果,如果符合你的项目或者确定你要了解的内容,再往下看吧:
<?php
// 判断post是否传过来sub参数,从而判断是提交计算,还是刷新页面
if (isset($_POST['sub'])){
echo "用户点击提交按钮,提交计算请求<br>";
// 下面注释掉的代码并不是错误的,只是区别switch的另外一种方式
// if ($_POST['ysf'] == "+"){
// echo $_POST['num1'] + $_POST['num2'] . "<br>";
// }elseif ($_POST['ysf'] == "-"){
// echo $_POST['num1'] - $_POST['num2'] . "<br>";
// }elseif ($_POST['ysf'] == "*"){
// echo $_POST['num1'] * $_POST['num2'] . "<br>";
// }elseif ($_POST['ysf'] == "/"){
// echo $_POST['num1'] / $_POST['num2'] . "<br>";
// }elseif ($_POST['ysf'] == "%"){
// echo $_POST['num1'] % $_POST['num2'] . "<br>";
// }
// 判断两个运算元是否为数字 如果不是数字 则不进行运算
if (!is_numeric($_POST['num1']) || !is_numeric($_POST['num2'])){
$isDo = false;
echo "其中一个运算元不是数字,不进行运算<br>";
}else{
$isDo = true;
}
// 声明变量 计算结果
$sum = "";
if ($isDo){ // 判断两个运算元是否为数字 如果不是数字 则不进行运算
switch ($_POST['ysf']){
case '+':
$sum = $_POST['num1'] + $_POST['num2'];
break;
case '-':
$sum = $_POST['num1'] - $_POST['num2'];
break;
case '*':
$sum = $_POST['num1'] * $_POST['num2'];
break;
case '/':
$sum = $_POST['num1'] / $_POST['num2'];
break;
case '%':
$sum = $_POST['num1'] % $_POST['num2'];
break;
}
echo $sum."<br>";
}
}else{
echo "用户刷新页面<br>";
//die("不做计算处理<br>");
}
?>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>简易计算器</title>
</head>
<body>
<!--table 表格-->
<!--border=1,表格周围的边框设置为1像素宽-->
<!--width=400,表格宽度为400像素宽-->
<!--align=center,表格水平对齐方式为居中对齐内容-->
<!--caption 定义表格标题-->
<!--<h1> 定义最大的标题。<h6> 定义最小的标题。-->
<!--<tr> 标签定义 HTML 表格中的行。包含一个或多个th或td元素。-->
<!--ysf 运算符的首字母。-->
<!--colspan 规定单元格可横跨的列数。-->
<table border="1" width="400" align="center">
<form action="jsq2.php" method="post">
<caption><h1>简易计算器</h1></caption>
<caption><h4>iwanghang</h4></caption>
<tr>
<!--第一个运算元-->
<!-- <td><input type="text" size="5" name="num1" value=""></td>-->
<td><input type="text" size="5" name="num1" value="<?php
if (isset($_POST['sub'])){echo $_POST['num1'];} ?>"></td>
<!--运算符-->
<td>
<select name="ysf">
<!-- <option value="+"> + </option>-->
<!-- <option value="-"> - </option>-->
<!-- <option value="*"> * </option>-->
<!-- <option value="/"> / </option>-->
<!-- <option value="%"> % </option>-->
<option <?php if (isset($_POST['sub'])){
if ($_POST['ysf']=="+") echo "selected";} ?> value="+"> + </option>
<option <?php if (isset($_POST['sub'])){
if ($_POST['ysf']=="-") echo "selected";} ?> value="-"> - </option>
<option <?php if (isset($_POST['sub'])){
if ($_POST['ysf']=="*") echo "selected";} ?> value="*"> * </option>
<option <?php if (isset($_POST['sub'])){
if ($_POST['ysf']=="/") echo "selected";} ?> value="/"> / </option>
<option <?php if (isset($_POST['sub'])){
if ($_POST['ysf']=="%") echo "selected";} ?> value="%"> % </option>
</select>
</td>
<!--第二个运算元-->
<!-- <td><input type="text" size="5" name="num2" value=""></td>-->
<td><input type="text" size="5" name="num2" value="<?php
if (isset($_POST['sub'])){echo $_POST['num2'];} ?>"></td>
<!--提交-->
<td><input type="submit" name="sub" value="等于"></td>
</tr>
<tr>
<td colspan="4">
<?php
if (isset($_POST['sub'])){
echo "计算结果:{$_POST['num1']}{$_POST['ysf']}{$_POST['num2']} = {$sum}";
}
?>
</td>
</tr>
</form>
</table>
</body>
</html>
来源:https://blog.csdn.net/iwanghang/article/details/54602542


猜你喜欢
- mysql数据库在做查询时候,有时候是英文字母大小写敏感的,有时候又不是的,主要是由mysql的字符校验规则的设置决定的,通常默认是不支持的
- python2.7安装目录下没有Scripts文件夹。这种问题可能是你装的python安装包年代久远了,到官网下载最新的python2.7安
- Python提取html中文本到txt正则去标签方式# -*- coding: utf-8 -*-import redef html_tag
- 一、正常配置stylus流程1.安装stylus、stylus-loader依赖(进入项目文件夹下)cnpm install stylus
- sort()方法排序列表中的对象,比较使用func(如果给定)。语法以下是sort()方法的语法:list.sort([func
- 在图书馆的检索系统中,关于图书的信息里面有一个是图书相关借阅关系图。跟这个社交网络图是一样的,反映了不同对象间的关联性。利用python画社
- 此次主要介绍介绍在flask框架中如何集成swagger文档, 我们知道以前给同事提供接口文档主要是写一个文档, 当遇到频繁修改
- 一、整体合并团队协作中,开发人员A、B、C分别在dev上进行功能开发,并push代码到远端dev上。当测试人员需要对功能进行测试的时候,我们
- 本文实例讲述了Yii框架引用插件和ckeditor中body与P标签去除的方法。分享给大家供大家参考,具体如下:在Yii中引用插件注:插件和
- python excel文件(.xls文件)如何处理xlrd 用于读取文件,xlwt 用于写入文件,xlutils 是两个工具包的桥梁,也就
- lambda 语法lambda 函数的语法只包含一个语句,表现形式如下:lambda [arg1 [,arg2,.....argn]]:ex
- 概述binlog2sql是一个Python开发开源的MySQL Binlog解析工具,能够将Binlog解析为原始的SQL,也支持将Binl
- 引言:我们在页面上会看到,谁登录的就会显示谁的信息,那么这个页面上的变量信息是怎样实现的呢?这就是本文要讲述的内容——Django中的模板变
- 语音识别是计算机软件识别口语中的单词和短语,并将其转换为可读文本的能力。那么如何在 Python 中将语音转换为文本?如何使用 Speech
- settings文件如下:DATABASES = { 'default': {
- function ReportFileStatus(filespec) { var fso, s = filespec; fso = new
- 使用ASP设置指定站点CPU最大使用程度'=============================================
- 本文实例为大家分享了python3音乐播放器的关键代码,供大家参考,具体内容如下from tkinter import *from trac
- 站长们是不是还在为空间不支持域名绑定到子目录而发愁呢?买了个便宜也不错的空间,用的还满意,准备再开几个网站,却发现空间程序太落后,无法支持域
- 关于python中的二维数组,主要有list和numpy.array两种。好吧,其实还有matrices,但它必须是2维的,而numpy a