为什么我的代码里case为false的选项无法输出?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | <!DOCTYPE html> <html> <head> <meta charset= "utf-8" > <title>DDDoument</title> </head> <body> <h1>差分机(雾)</h1> <form action= "#" method= "post" > 数值1:<input type= "text" name= "num1" value= "" > <select class = "" name= "op" > <option value= "+" >+</option> <option value= "-" >-</option> <option value= "*" >*</option> <option value= "/" >/</option> <option value= "%" >%</option> </select> 数值2:<input type= "text" name= "num2" value= "" > <input type= "submit" name= "act" value= "提交" > </form> <?php error_reporting (E_ALL^E_NOTICE); $act = $_POST [ 'act' ]; if ( $act ) { $num1 = $_POST [ 'num1' ]; $num2 = $_POST [ 'num2' ]; $op = $_POST [ 'op' ]; $is_number = is_numeric ( $num1 )&& is_numeric ( $num2 ); var_dump( $is_number ); echo "<br/>" ; switch ( $is_number ) { case 'ture' : switch ( $op ) { case '+' : $res = $num1 + $num2 ; break ; case '-' : $res = $num1 - $num2 ; break ; case '*' : $res = $num1 * $num2 ; break ; //除法计算 case '/' : switch ( $num2 ) { case '0' : exit ( '非法操作数' ); break ; default : settype( $num1 , 'double' ); settype( $num2 , 'double' ); settype( $res , 'double' ); $res = $num1 / $num2 ; break ; } case '%' : $res = $num1 % $num2 ; break ; default : echo "非法操作" ; break ; } echo "显而易见:<br/>" , "{$num1}{$op}{$num2}={$res}" ; break ; //当输入的字符不是数值型时 case 'false' : echo "非法操作数" ; break ; } } ?> </body> </html> |
1
收起
正在回答 回答被采纳积分+1
4回答
ggplot2
2018-10-15 17:46:51
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | <!DOCTYPE html> <html> <head> <meta charset= "utf-8" > <title>DDDoument</title> </head> <body> <h1>差分机(雾)</h1> <form action= "#" method= "post" > 数值1:<input type= "text" name= "num1" value= "" > <select class = "" name= "op" > <option value= "+" >+</option> <option value= "-" >-</option> <option value= "*" >*</option> <option value= "/" >/</option> <option value= "%" >%</option> </select> 数值2:<input type= "text" name= "num2" value= "" > <input type= "submit" name= "act" value= "提交" > </form> <?php error_reporting (E_ALL^E_NOTICE); $act = $_POST [ 'act' ]; if ( $act ) { $num1 = $_POST [ 'num1' ]; $num2 = $_POST [ 'num2' ]; $op = $_POST [ 'op' ]; if ( is_numeric ( $num1 )&& is_numeric ( $num2 )) { switch ( $op ) { case '+' : $res = $num1 + $num2 ; break ; case '-' : $res = $num1 - $num2 ; break ; case '*' : $res = $num1 * $num2 ; break ; case '/' : // switch ($num2) { // case '0': // exit('非法操作数'); // break; // default: // $res=doubleval($num1)/$num2; // break; // // } if ( $num2 ==0){ exit ( '非法操作数' ); } else { $res =(double) $num1 / $num2 ; } case '%' : $res = $num1 % $num2 ; break ; default : echo "非法操作" ; break ; } echo "显而易见:<br/>" , "{$num1}{$op}{$num2}={$res}" ; //当输入的字符不是数值型时 } else { echo "非法操作数" ; } } ?> </body> </html> |
改了一下之后除法运算依然无法输出小数
PHP小白零基础入门
- 参与学习 人
- 提交作业 626 份
- 解答问题 4928 个
想要学好Web后端开发的中流砥柱语言,本阶段为你轻松铺就扎实的基础,从前端网页布局的搭建到后台PHP开发,助你从零基础到掌握主流开发语言。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧