[PHP中文社区教程] 第十五课:选择控制

林继 PHP 技术 5,245 共写了1714个字 (2006-12-21 15:37:09) 没有评论 打印 扫描二维码 百度已收录

From:http://www.phpnet.cn/bbs/viewthread.php?tid=476&extra=page%3D1###

  选择控制实际上就是分支控制,它使得语句执行过程中会出现分支,根据条件判断选择其中其一分支往下执行。在PHP中,它提供了两种语句来实现选择控制:一种是if…else…,一种是switch语句。

  下面用一个实际例子来说明switch语句的用法:在一些论坛上,往往会给不同级别的会员授予1颗到9颗不等的星星。怎样写这段代码呢?看下面的例子15-1:


<?php

 

switch( @$_POST['level'] ) {

 

  case : break;

  case : echo '<font color=#ff0000>★</font>';  break;

  case : echo '<font color=#ff0000>★★</font>';  break;

  case : echo '<font color=#ff0000>★★★</font>';  break;

  case : echo '<font color=#ff0000>★★★★</font>';  break;

  case : echo '<font color=#ff0000>★★★★★</font>';  break;

  case : echo '<font color=#ff0000>★★★★★★</font>';  break;

  case : echo '<font color=#ff0000>★★★★★★★</font>';  break;

  case : echo '<font color=#ff0000>★★★★★★★★</font>';  break;

  case : echo '<font color=#ff0000>★★★★★★★★★</font>';  break;

  default: break;

 

}

 

?>

 

<form method="POST" action="#">

  <p>会员级别:<input type="text" name="level" size="20"></p>

  <p><input type="submit" value="提交" name="B1"></p>

</form>

switch语法表达式为:


<?php

switch(expression0){

 

  case expression1 :

    statement1;

    break;

  case expression2 :

    statement2;

    break;

  case expression3 :

    statement3;

    break;

 

  ......

 

  default:

    statementN;

    break;

}

 

?>

  其中,expression0,expression1,expression2……可以是一个变量常量或者表达式,当程序执行到switch语句时,它会分别把expression0与expression1,expression2…作比较,当两表达式数值相等时,就会执行相应case语句。default是默认的分支语句,可以匹配其它分支没有匹配的事情,你也可以忽略它。

  注意:要使用语句 break来跳出switch,否则,PHP会执行完一个case语句,会继续执行下一个case语句,从而造成多个选择分支被执行。

  在例子15-1中,switch会获取$POST['level']的值,如果其值等于0,就会执行与之相应的第一条case语句,如果其值等于1就会执行第二条case语句…

  switch的用法你掌握了吗?下面出一道作业来结束本课:编写一段由下拉列表选择名人,从而显示该名人名言的程序。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

< >