php中switch语句用法详解


Posted in PHP onAugust 17, 2015

本文介绍php中的switch语句的用法,它跟其他语句中的switch用法差不多的,但注意有有一个break语句。

PHP中switch语句的标准语法:

switch (expression)
{
case label1:
 code to be executed if expression = label1;
 break; 
case label2:
 code to be executed if expression = label2;
 break;
default:
 code to be executed
 if expression is different from both label1 and label2;
}

举例:

switch($i){
  case 1:
    echo 1;
    break;
  case 2:
    echo 2;
    break;
  default:
    echo 'others';
}

也可以使用switch来判断一个取值范围,或者说是在case中自定义条件。

<?php
header("content-type:text/html;charset=utf8");
$score=50;
switch($score) 
{
 case $score>=90 && $score<=100:
  echo "优<br>";
  break;
 case $score>=80 && $score<90:
  echo "良<br>";
  break;
 case $score>=70 && $score<80:
  echo "中<br>";
  break;
 case $score>=60 && $score<70:
  echo "及格<br>";
  break;
 case $score>=0 && $score<60:
  echo "不及格<br>";
  break;
 default:
  echo"成绩输入错误<br>";
}
?>

简单示例

<?php 
 //switch细节 
 //情况一:数值匹配的时候自动转换成字串 
 $a=1; 
 switch($a){ 
  case "1": 
    echo 'hello1'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况二:数值匹配的时候自动转换成字符 
 $a=1; 
 switch($a){ 
  case '1': 
    echo 'hello2'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况三:字符匹配的时候自动转换成数值 
 $a='1'; 
 switch($a){ 
  case 1: 
    echo 'hello3'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况四:字串匹配的时候自动转换成数值 
 $a="1"; 
 switch($a){ 
  case 1: 
    echo 'hello4'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况五:float也可以匹配 
 $a=1.1; 
 switch($a){ 
  case 1.1: 
    echo 'hello5'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况六:非0是true 
 $a=true; 
 switch($a){ 
  case 1: 
    echo 'hello6'; 
    break; 
  case true: 
    echo 'hello61'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况七:能匹配boolean 
 $a=true; 
 switch($a){ 
  case true: 
    echo 'hello7'; 
    break; 
  case 2: 
    echo 'hello71'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况八:能匹配null 
 $a=null; 
 switch($a){ 
  case 2://'' "" false 0 都能进入 
    echo 'hello8'; 
    break; 
  case null: 
    echo 'hello81'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况九:退出顺序 
 $a=5; 
 switch($a){ 
  case 1: 
    echo 'hello6'; 
    break; 
  case 2: 
    echo '我是2号出口'; 
    break; 
  case 5: 
    echo '我是5号出口'; 
    //break; 
  case true: 
    echo 'hello61'; 
    break; 
  default: 
    echo 'sorry none is the same!'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
  //情况十:退出顺序 
 $a=50; 
 switch($a){ 
  default: 
    echo 'sorry none is the same!'; 
    //break; 
  case 50: 
    echo 'hello6'; 
    //break; 
  case 2: 
    echo '我是2号出口'; 
    break; 
  case 5: 
    echo '我是5号出口'; 
    //break; 
  case 6: 
    echo 'hello61'; 
    break; 
 } 
 echo '<br/>'.'成功退出····'; 
 echo '<hr/>'; 
?>

运行结果

hello1
成功退出····
hello2
成功退出····
hello3
成功退出····
hello4
成功退出····
hello5
成功退出····
hello6
成功退出····
hello7
成功退出····
hello81
成功退出····
我是5号出口hello61
成功退出····
hello6我是2号出口
成功退出····
PHP 相关文章推荐
一些常用的php函数
Dec 06 PHP
Adodb的十个实例(清晰版)
Dec 31 PHP
php 网页播放器用来播放在线视频的代码(自动判断并选择视频文件类型)
Jun 03 PHP
php数组函数序列 之array_count_values() 统计数组中所有值出现的次数函数
Oct 29 PHP
如何用PHP实现插入排序?
Apr 10 PHP
php取整函数ceil,floo,round的用法及介绍
Aug 31 PHP
PHP跨平台获取服务器IP地址自定义函数分享
Dec 29 PHP
php结合安卓客户端实现查询交互实例
May 05 PHP
浅谈php中curl、fsockopen的应用
Dec 10 PHP
数组任意位置插入元素,删除特定元素的实例
Mar 02 PHP
PHP实现批量删除(封装)
Apr 28 PHP
PHP中TP5 上传文件的实例详解
Jul 31 PHP
Linux系统下PHP-FPM的安装和配置教程
Aug 17 #PHP
PHP连接Nginx服务器并解析Nginx日志的方法
Aug 16 #PHP
ThinkPHP开发框架函数详解:C方法
Aug 14 #PHP
提高php编程效率技巧
Aug 13 #PHP
php轻量级的性能分析工具xhprof的安装使用
Aug 12 #PHP
详细解读PHP中接口的应用
Aug 12 #PHP
举例讲解PHP面对对象编程的多态
Aug 12 #PHP
You might like
探讨:如何使用PhpDocumentor生成文档
2013/06/25 PHP
Parse正式发布开源PHP SDK
2014/08/11 PHP
laravel 4安装及入门图文教程
2014/10/29 PHP
WordPress中is_singular()函数简介
2015/02/05 PHP
Laravel 5框架学习之模型、控制器、视图基础流程
2015/04/08 PHP
实现连缀调用的map方法(prototype)
2009/08/05 Javascript
值得分享的Bootstrap Ace模板实现菜单和Tab页效果
2015/12/30 Javascript
JavaScript动态检验密码强度的实现方法
2016/11/09 Javascript
nodejs集成sqlite使用示例
2017/06/05 NodeJs
VUE长按事件需求详解
2017/10/18 Javascript
vue自定义指令之面板拖拽的实现
2019/04/14 Javascript
vue获取验证码倒计时组件
2019/08/26 Javascript
原生js实现轮播图特效
2020/05/04 Javascript
js实现随机点名功能
2020/12/23 Javascript
使用Python保存网页上的图片或者保存页面为截图
2016/03/05 Python
Python中asyncore异步模块的用法及实现httpclient的实例
2016/06/28 Python
Python基于辗转相除法求解最大公约数的方法示例
2018/04/04 Python
python sys.argv[]用法实例详解
2018/05/25 Python
python中pika模块问题的深入探究
2018/10/13 Python
NumPy中的维度Axis详解
2019/11/26 Python
python怎么删除缓存文件
2020/07/19 Python
css3media响应式布局实例
2016/07/08 HTML / CSS
HTML5 新旧语法标记对我们有什么好处
2012/12/13 HTML / CSS
Russell Stover巧克力官方网站:美国领先的精美巧克力制造商
2016/11/27 全球购物
Douglas意大利官网:购买香水和化妆品
2020/05/27 全球购物
软件测试面试题
2014/01/05 面试题
艺术应用与设计专业个人的自我评价
2013/11/19 职场文书
护士辞职信范文
2014/01/19 职场文书
小学毕业感言500字
2014/02/28 职场文书
应届生求职自荐信范文
2014/04/07 职场文书
经营理念标语
2014/06/21 职场文书
英文慰问信
2015/02/14 职场文书
学校教学工作总结2015
2015/05/19 职场文书
Golang 链表的学习和使用
2022/04/19 Golang
HTML页面中使两个div并排显示的实现
2022/05/15 HTML / CSS
python数字图像处理数据类型及颜色空间转换
2022/06/28 Python