文章详情页
为什么我的switch自动输出了第一个case?
浏览:254日期:2022-06-07 16:23:40
问题描述
<form action="" method="get"> <label for="score">请输入成绩:</label><input type="number" id="score" name="score" max="100" value=""> <button>提交</button></form>
$init = $_GET['score'];switch($init){ case $init >=90 : echo '<p>厉害了,我的学霸!</p>'; break; case $init >=80 : echo '<p>再接再厉,努力吧!</p>'; break; case $init >=70 : echo '<p>差太多啦!得加油赶上了!!</p>'; break; case $init >=60 : echo '<p>建议你留级吧!!</p>'; break; default:break;}

明明还没有向form传参,怎么把第一个case输出了呢?这个时候$init变量是空的呀,怎么会判断成功呢??这是怎么回事呢??
问题解答
回答1:如果什么也不输入就提交的话,那么提交的值就是空,空不符合任何switch条件,所以它会从第一个CASE开始执行,直到遇到break才会停止
相关文章:
1. angular.js - angular中的a标签不起作用2. 前端 - 类到底该如何去命名 .newsList 这种的命名难道真的不是过度语义化吗?~3. docker api 开发的端口怎么获取?4. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?5. 如何解决Centos下Docker服务启动无响应,且输入docker命令无响应?6. docker不显示端口映射呢?7. golang - 用IDE看docker源码时的小问题8. docker start -a dockername 老是卡住,什么情况?9. javascript - 关于js原生事件的绑定与解除绑定10. docker容器呢SSH为什么连不通呢?
排行榜

网公网安备