免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1184 | 回复: 0

switch [复制链接]

论坛徽章:
0
发表于 2005-11-03 13:40 |显示全部楼层

switch
switch 语句和具有同样表达式的一系列的 IF 语句相似。很多场合下需要把同一个变量(或表达式)与很多不同的值比较,并根据它等于哪个值来执行不同的代码。这正是 switch 语句的用途。
注: 注意和其它语言不同,
continue
语句作用到 switch 上的作用类似于 break。如果你在循环中有一个 switch 并希望 continue 到外层循环中的下一个轮回,用 continue 2。
下面两个例子使用两种不同方法实现同样的事,一个用一系列 if 语句,另一个用 switch 语句:
[color="#000000"][color="#007700"]) {
    print [color="#dd0000"]"i equals 0"[color="#007700"];
} elseif ([color="#0000bb"]$i [color="#007700"]== [color="#0000bb"]1[color="#007700"]) {
    print [color="#dd0000"]"i equals 1"[color="#007700"];
} elseif ([color="#0000bb"]$i [color="#007700"]== [color="#0000bb"]2[color="#007700"]) {
    print [color="#dd0000"]"i equals 2"[color="#007700"];
}
switch ([color="#0000bb"]$i[color="#007700"]) {
    case [color="#0000bb"]0[color="#007700"]:
        print [color="#dd0000"]"i equals 0"[color="#007700"];
        break;
    case [color="#0000bb"]1[color="#007700"]:
        print [color="#dd0000"]"i equals 1"[color="#007700"];
        break;
    case [color="#0000bb"]2[color="#007700"]:
        print [color="#dd0000"]"i equals 2"[color="#007700"];
        break;
}
[color="#0000bb"]?>
switch
switch 语句和具有同样表达式的一系列的 IF 语句相似。很多场合下需要把同一个变量(或表达式)与很多不同的值比较,并根据它等于哪个值来执行不同的代码。这正是 switch 语句的用途。
注: 注意和其它语言不同,
continue
语句作用到 switch 上的作用类似于 break。如果你在循环中有一个 switch 并希望 continue 到外层循环中的下一个轮回,用 continue 2。
下面两个例子使用两种不同方法实现同样的事,一个用一系列 if 语句,另一个用 switch 语句:
[color="#000000"][color="#007700"]) {
    print [color="#dd0000"]"i equals 0"[color="#007700"];
} elseif ([color="#0000bb"]$i [color="#007700"]== [color="#0000bb"]1[color="#007700"]) {
    print [color="#dd0000"]"i equals 1"[color="#007700"];
} elseif ([color="#0000bb"]$i [color="#007700"]== [color="#0000bb"]2[color="#007700"]) {
    print [color="#dd0000"]"i equals 2"[color="#007700"];
}
switch ([color="#0000bb"]$i[color="#007700"]) {
    case [color="#0000bb"]0[color="#007700"]:
        print [color="#dd0000"]"i equals 0"[color="#007700"];
        break;
    case [color="#0000bb"]1[color="#007700"]:
        print [color="#dd0000"]"i equals 1"[color="#007700"];
        break;
    case [color="#0000bb"]2[color="#007700"]:
        print [color="#dd0000"]"i equals 2"[color="#007700"];
        break;
}
[color="#0000bb"]?>
为避免错误,理解 switch 是怎样执行的非常重要。switch 语句一行接一行地执行(实际上是语句接语句)。开始时没有代码被执行。仅当一个 case 语句中的值和 switch 表达式的值匹配时 PHP 才开始执行语句,直到 switch 的程序段结束或者遇到第一个 break 语句为止。如果不在 case 的语句段最后写上 break 的话,PHP 将继续执行下一个 case 中的语句段


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/6039/showart_54994.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP