在循环的开章,我们讲到了循环的逻辑和语法,通过以上的训练。你能轻易的掌握循环的知识点。 while是一个布尔型循环,while(布尔判断)的值为true就执行大括号括起来的代码。如果为假就停出去,执行后续代码。 现在,我们增加一点难度,来做隔行变色。隔行变色,是我们在网页中经常使用到的表现。 要求重点掌握。我们来看看效果: ![2015-08-08/55c5b00fcc714](http://box.kancloud.cn/2015-08-08_55c5b00fcc714.png) **那我们现在要写一个0-99的隔行变色的表格该怎么写呢?** 【要求默写】 1. 定义初始值,输出表格标签 和 表格中的列标签 ~~~ <?php //定义循环的初始值 $i=0; echo '<table width="800" border="1">'; while($i<100){ //输出列0-99的列了 echo '<td>'.$i.'</td>'; //一定要加哟,不然死循环了 $i++; } echo '</table>'; ?> ~~~ 2. 加上行产生的逻辑 ~~~ <?php $i=0; echo '<table width="800" border="1">'; while($i<100){ //0 - 9 为一行 //10 -19 为一行 //因此,每一行都能够被10求默,如为为10的时候,应该显示行开始的标签 if($i%10 == 0){ //为了隔行变色,每20,40,60每行的颜色是PHP学院的,因此我们又可以再进行一次取余运算 if($i%20==0){ echo '<tr>'; }else{ echo '<tr bgcolor="pink">'; } } echo '<td>'.$i.'</td>'; $i++; //同理,每一行结束是不是应该有一个</tr>结束标签呢? if($i%10==0){ echo '</tr>'; } } echo '</table>'; ?> ~~~ 以上代码需要多练习,不断的实验才能想象出来。上面的部份,需要默写来锻炼逻辑。 可不可以循环里面再嵌套一次循环(双层循环),来实现隔行变色的表格效果呢?【要求默写】 基本实现逻辑如下 1. 先输出表格标签 2. 通过第一层循环再输出<tr></tr>行标签 3. 在第一层循环里面再插入一层循环输出<td></td>标签 ~~~ <?php echo '<table width="800" border="1">'; $i=0; while($i<10){ echo '<tr>'; $j=0; while($j<10){ echo '<td>'.$j.'</td>'; $j++; } echo '</tr>'; $i++; } echo '</table>'; ?> ~~~ 上面的代码,你自己加上隔行变色的判断和正常的0-99的数值显示哟? * * * * * 你可以学完循环后,再学习一些基本的算法。以后PHP学院的视频中我们会多多的进行讲解。 这样帮助你面试的成功率更高。 注:不要写死循环(没有退出条件的循环) ~~~ whie(1){ echo 1111.'<br />'; } ~~~