首页 » 建站技术 » PHP 技术 » 浏览内容

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


2006-12-21 15:37:09 5,261 0 发表评论 字体: 作者:C.K.
标签: php中文社区教程

体验版 88 元,个人版 128 元,多用户版 288元个人版160元升级到多用户版。

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

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

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

<span style="color: #000000"><br /><span style="color: #0000BB">&lt;?php<br /><br />&nbsp;<br /><br /></span><span style="color: #007700">switch(&nbsp;@</span><span style="color: #0000BB">$_POST</span><span style="color: #007700">[</span><span style="color: #DD0000">&#39;level&#39;</span><span style="color: #007700">]&nbsp;)&nbsp;{<br /><br />&nbsp;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">0&nbsp;</span><span style="color: #007700">:&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">1&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">2&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">3&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">4&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">5&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★★★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">6&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★★★★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">7&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★★★★★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">8&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★★★★★★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">9&nbsp;</span><span style="color: #007700">:&nbsp;echo&nbsp;</span><span style="color: #DD0000">&#39;&lt;font&nbsp;color=#ff0000&gt;★★★★★★★★★&lt;/font&gt;&#39;</span><span style="color: #007700">;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;default:&nbsp;break;<br /><br />&nbsp;<br /><br />}<br /><br />&nbsp;<br /><br /></span><span style="color: #0000BB">?&gt;<br /><br /></span>&nbsp;<br /><br />&lt;form&nbsp;method="POST"&nbsp;action="#"&gt;<br /><br />&nbsp;&nbsp;&lt;p&gt;会员级别:&lt;input&nbsp;type="text"&nbsp;name="level"&nbsp;size="20"&gt;&lt;/p&gt;<br /><br />&nbsp;&nbsp;&lt;p&gt;&lt;input&nbsp;type="submit"&nbsp;value="提交"&nbsp;name="B1"&gt;&lt;/p&gt;<br /><br />&lt;/form&gt;</span><br />

switch语法表达式为:

<span style="color: #000000"><br /><span style="color: #0000BB">&lt;?php<br /><br /></span><span style="color: #007700">switch(</span><span style="color: #0000BB">expression0</span><span style="color: #007700">){<br /><br />&nbsp;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">expression1&nbsp;</span><span style="color: #007700">:<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">statement1</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">expression2&nbsp;</span><span style="color: #007700">:<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">statement2</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;break;<br /><br />&nbsp;&nbsp;case&nbsp;</span><span style="color: #0000BB">expression3&nbsp;</span><span style="color: #007700">:<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">statement3</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;break;<br /><br />&nbsp;<br /><br />&nbsp;&nbsp;......<br /><br />&nbsp;<br /><br />&nbsp;&nbsp;default:<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">statementN</span><span style="color: #007700">;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;break;<br /><br />}<br /><br />&nbsp;<br /><br /></span><span style="color: #0000BB">?&gt;</span><br /></span><br />

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

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

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

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

网站统计 Statistics

  • 创建时间: 2005年1月3日 距今5094 天
  • 日志总数: 2461
  • 评论总数: 630
  • 标签总数: 654
  • 链接总数: 273
  • 最后更新: 2018-8-31 17:57:04
  • 您是本站第 14270377 位访客

广告区 Guǎng Gào