利用php循环遍历及运算法则实现重新组合数组与计算器实例两则
16lz
2021-08-09
一、封装一个从数组中取偶数并重新组成数组的函数
方法一:
实例
<?php//声明一个数组,模拟提供的数组$arr=[23,3,45,6,78,8,34];//声明一个空数组,一会儿用来存放新的数组内容$even=[];//定义一个封装函数functioneven($args){//从全局变量获取定义好的控数组global$even;//用for循环遍历数组for($i=0;$i<count($args);$i++){//用对2取余的方法对数组里的元素进行偶数的判断if($args[$i]%2==0){//重新组装数组为新数组array_push($even,$args[$i]);}}//对数组进行输出echo'<pre>';print_r($even);}//调用函数even($arr);?>
点击 "运行实例" 按钮查看在线实例
方法二:
实例
<?php//声明一个数组,模拟提供的数组$arr=[23,3,45,6,78,8,34];//声明一个空数组,一会儿用来存放新的数组内容$even=[];//定义一个封装函数functioneven($args){//从全局变量获取定义好的控数组global$even;//循环遍历数组为元素foreach($argsas$val){//用对2取余的方法对数组里的元素进行偶数的判断if($val%2==0){//重新组装数组为新数组,等同于上面的array_push($even,$args[$i]);$even[]=$val;}}//对数组进行输出echo'<pre>';print_r($even);}//调用函数even($arr);?>
运行实例 »
点击 "运行实例" 按钮查看在线实例
这里需要注意一下,不要想当然的在重新组装数组后,在下面直接print_r($even)把内容输出出来,这里还是在循环中的,如果在if判断里就输出,那么会从开始检测到的第一个符合的值到最后一个符合条件的值,每一个都会输出一遍。
二、使用php循环及运算符制作一个简易计算器
实例
<!DOCTYPEhtml><htmllang="zh-CN"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>计算器</title></head><body><?php//显示除去E_NOTICE之外的所有错误信息error_reporting(E_ALL&~E_NOTICE);//判断是否点击了提交按钮if(isset($_POST["sub"]))://判断是否在除法运算或者取余运算中有0作为被除数,这里如果if语句后面没有else,则可以后面直接跟if为true的内容if($_POST["opt"]=="÷"&&$_POST["num2"]==0||$_POST["opt"]=="取余"&&$_POST["num2"]==0)$mess="<spanstyle='color:red;'>除数不能为0</span>";endif;?><div><h1>计算器</h1><!--form表单action为空默认是当前脚本--><formaction=""method="post"><!--限定第一个输入框为数字,且必填,且提交后数值默认显示是上次点提交前输入的最后一个数字--><inputtype="number"name="num1"requiredvalue="<?=$_POST["num1"]?>"id="num1"><!--制作下拉框--><selectname="opt"><!--对运算符进行设置且提交后默认显示上次运算使用的运算符--><optionvalue="+"<?=$_POST["opt"]=="+"?"selected":""?>>+</option><optionvalue="-"<?=$_POST["opt"]=="-"?"selected":""?>>-</option><optionvalue="×"<?=$_POST["opt"]=="×"?"selected":""?>>×</option><optionvalue="÷"<?=$_POST["opt"]=="÷"?"selected":""?>>÷</option><optionvalue="取余"<?=$_POST["opt"]=="取余"?"selected":""?>>取余</option><optionvalue="幂运算"<?=$_POST["opt"]=="幂运算"?"selected":""?>>幂运算</option></select><!--限定第二个输入框为数字,且必填,且提交后数值默认显示是上次点提交前输入的最后一个数字--><inputtype="number"name="num2"value="<?=$_POST["num2"]?>"id="num2"><!--提交按钮--><inputtype="submit"name="sub"value="计算"></form></div><?php//判断是否有报错信息且是否已经点击提交按钮if(!$mess&&isset($_POST["sub"]))://如果是,则根据POST过来的不同运算符,进入switch循环,对POST提交的两个数字进行计算switch($_POST["opt"]):case"+":$result=$_POST["num1"]+$_POST["num2"];break;case"-":$result=$_POST["num1"]-$_POST["num2"];break;case"×":$result=$_POST["num1"]*$_POST["num2"];break;case"÷":$result=$_POST["num1"]/$_POST["num2"];break;case"取余":$result=$_POST["num1"]%$_POST["num2"];break;case"幂运算":$result=$_POST["num1"]**$_POST["num2"];break;endswitch;//把结果输出的内容进行组装$res="计算结果:{$_POST["num1"]}{$_POST["opt"]}{$_POST["num2"]}={$result}";//因为幂运算是一个特殊形式,这里加个判断,如果不是幂运算,则正常输出,是幂运算则单独输出运算内容if($_POST["opt"]!="幂运算"):echo"<spanstyle='color:green;'>{$res}</span>";else:echo"<spanstyle='color:green;'>计算结果:{$_POST["num1"]}的{$_POST["num2"]}次方={$result}</span>";endif;else://否则如果有报错信息则输出报错信息echo$mess;endif;?></body></html>
运行实例 »
点击 "运行实例" 按钮查看在线实例
更多相关文章
- 请实例演绎你对回调函数与递归函数的理解?
- PHP基础课第四次作业
- 0805作业
- 请实例演绎php遍历数组与js遍历数组的区别
- 0805 PHP编程作业
- 数组、计算器
- php 求数组中的偶数成员
- 数组循环取模及代码实现计算器
- 0805 一.将数组的偶数去出, 二.尝试实现计算器功能