条件控制语句
 
1)  if条件控制语句
语法:
        If(expr)
               Statement;                           //这是基本的表达式
        If() {}                                        //这是执行多条语句的表达式
        If() {} else {}                             //这是通过else延伸了的表达式
        If() {} elseif () {} else {}             //这是加入了elseif同时判断多个条件的表达式
示例:<?php
if($Submit==true){
$user = $_POST['user'];
$password = $_POST['password'];
if(empty($user) || empty($password)){
    echo "<script>alert('用户名或密码不能为空'); history.back();</script>";
}else{
    echo "登陆成功!";
}}
?>
2)  switch多分支语句
语法:
Switch(expr){                                                          //expr条件为变量名称
Case expr1:                                       //case后的expr1为变量的值,最后必须为冒号“:”
Statement1;                                //冒号“:”后是符合该条件时要执行的部分
Break;                                               //应用break来跳离循环体
Case expr2:
Statement2;
Break;
Default:
statementN;
break;
}
示例:<?php
switch($lmbs){
case "精品屋":
        include "index1.php";
    break;
case "新品上市":
        include "index2.php";
    break;
case "特价区":
        include "index3.php";
    break;
case "商品浏览":
        include "index4.php";
    break;
case "":
        include "index4.php";
    break;
}
?>
 
循环语句
 
1)  while循环语句
对表达式的值进行判断,当表达式为非0值时,执行while语句中内嵌语句;当表达式的值为0时,则不执行while语句中的内嵌语句。特点:先判断表达式,后执行语句。
       语法:
       While(expr){                                                    //expr是表达式
Statement;                                                //当表达式expr的值为true时,输出内容
}
示例:
<?php $query="select * from tb_user ";
$result=mysql_query($query);
while($myrow=mysql_fetch_array($result)){
?>
  <tr>
    <td height="25" align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[username];?></span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[password];?></span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[data];?></span></td>
  </tr>
<?php }?>
2)  do----while循环语句
先执行一次指定的循环体语句,然后判断表达式的值,当表达式的值为非0时,返回重新执行循环体语句,如此反复,直到表达式的值等于0为止,此时循环结束。特点:先执行循环体,然后判断条件是否成立。
       语法:
       Do{
Statement;
}while(expr);
3) for循环语句
              拥有3个条件表达式,执行是首先执行表达式1;然后执行表达式2,并对表达式2的值进行判断,如果为真,则执行for循环内嵌的语句,如果值为假,则结束循环;最后执行表达式3。
              语法:
              For(expr1;expr2;expr3){
Statement
}
              参数:
                     Expr1:在第一次循环开始时被执行,必要参数;
                     Expr2:在每次循环开始时被执行,决定循环是否继续,必要参数;
                     Expr3:在每次循环结束时被执行;
                     Statement:满足条件后,循环执行的语句。
示例:乘法口决表
<?php 
 for ($i=1;$i<=9;$i++){
   echo '<table border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#666666">';
    echo "<tr>";
 for ($j=1;$j<=$i;$j++){
       $c=$i*$j;
      echo '<td bgcolor="#FFFFFF">';
      echo "$i*$j=$c"; 
      echo "</td>";
      }
    echo "</tr>";
   echo "</table>";
 }
?>
运行结果:
1*1=1
 
2*1=2
2*2=4
 
3*1=3
3*2=6
3*3=9
 
4*1=4
4*2=8
4*3=12
4*4=16
 
5*1=5
5*2=10
5*3=15
5*4=20
5*5=25
 
6*1=6
6*2=12
6*3=18
6*4=24
6*5=30
6*6=36
 
7*1=7
7*2=14
7*3=21
7*4=28
7*5=35
7*6=42
7*7=49
 
8*1=8
8*2=16
8*3=24
8*4=32
8*5=40
8*6=48
8*7=56
8*8=64
 
9*1=9
9*2=18
9*3=27
9*4=36
9*5=45
9*6=54
9*7=63
9*8=72
9*9=81
 
3)  foreach循环语句
主要用于处理数组,是遍历数组的一种简单方法。自php4开始引入。
语法:(两种格式)
Foreach(array_expression as $value){
Statement
}
       或:Foreach(array_expression as $key => $value){
Statement
}
参数:array_expression是指要遍历的数组;
         $value是数组的值;
         $key是数组的键名;
         Statement是满足条件时要循环执行的语句。
示例:
       <?php
$name = array("1"=>"钢笔","2"=>"衬衫","3"=>"手机","4"=>"电脑");
$price = array("1"=>"108元","2"=>"88元","3"=>"666元","4"=>"6666元");
$counts = array("1"=>1,"2"=>1,"3"=>2,"4"=>1);
echo '<table width="580" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#FF0000">
          <tr>
            <td width="145" align="center" bgcolor="#FFFFFF"  class="STYLE1">商品名称</td>
            <td width="145" align="center" bgcolor="#FFFFFF"  class="STYLE1">价 格</td>
            <td width="145" align="center" bgcolor="#FFFFFF"  class="STYLE1">数量</td>
            <td width="145" align="center" bgcolor="#FFFFFF"  class="STYLE1">金额</td>
        
 </tr>';
foreach($name as $key=>$value){  //以数组做循环,输出键和值
     echo '<tr>
            <td height="25" align="center" bgcolor="#FFFFFF" class="STYLE2">'.$value.'</td>
            <td align="center" bgcolor="#FFFFFF" class="STYLE2">'.$price[$key].'</td>   
            <td align="center" bgcolor="#FFFFFF" class="STYLE2">'.$counts[$key].'</td>
            <td align="center" bgcolor="#FFFFFF" class="STYLE2">'.$counts[$key]*$price[$key].'</td>
</tr>';
}
echo '</table>';
?>
 
跳转语句
 
1)  break跳转语句
用于结束当前条件控制语句if、switch或者循环控制语句while、do----while、for、foreach的执行。Break语句可以接受一个可选参数来决定跳出几重循环。
示例:
<table>
<tr>
    <td align="center"><span class="STYLE7">获取数据表中的前
        <input name="counts" type="text" id="counts" size="5">
    条记录
    <input type="submit" name="Submit" value="提交">
    </span>
         
    </td>
  </tr>
</table>
<?php if(is_numeric($counts)==true){  //判断输入的数据是否是数字
?>  
<table width="523" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#F6842C">
 
  <tr>
    <td height="35" align="center" bgcolor="#FFFFFF"><span class="STYLE6">用户名</span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6">密码</span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6">时间</span></td>
  </tr>
<?php $query="select * from tb_user ";   //读取数据库中的数据
$result=mysql_query($query);        
while($myrow=mysql_fetch_array($result)){  //应用while循环控制语句输出数据库中的数据
if($myrow[id]==$counts+1){                 //判断当id=$counts+1时,跳出while循环
break;
}
?>
<tr>
    <td height="25" align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[username];?></span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[password];?></span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[data];?></span></td>
  </tr>
<?php }?>
2)  continue跳转语句
用来跳过本次循环中指定条件的语句,并且继续执行其他的循环语句。
示例:
<table width="523" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#F98532">
  <form name="form1" method="post" action="index.php">
  <tr>
    <td align="center"><span class="STYLE7">获取数据表中除第        <input name="counts" type="text" id="counts" size="5">    条记录外的所有记录
    <input type="submit" name="Submit" value="提交">
            
    </td>
  </tr>
</form>
</table>
<?php if(is_numeric($counts)==true){  //判断输入的数据是否是数字
?>  
<table width="523" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#F6842C">
 
  <tr>
    <td align="center" bgcolor="#FFFFFF" class="STYLE6">ID</td>
    <td height="35" align="center" bgcolor="#FFFFFF"><span class="STYLE6">文件名</span></td>
    <td align="center" bgcolor="#FFFFFF" class="STYLE6">存储路径</td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6">时间</span></td>
  </tr>
<?php $query="select * from tb_up_file ";   //读取数据库中的数据
$result=mysql_query($query);        
while($myrow=mysql_fetch_array($result)){  //应用while循环控制语句输出数据库中的数据
if($myrow[id]==$counts){                 //判断当id=$counts时,跳出while循环
continue;
}
?>
  <tr>
    <td align="center" bgcolor="#FFFFFF" class="STYLE6"><?php echo $myrow[id];?></td>
    <td height="25" align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[file_name];?></span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[file_text];?></span></td>
    <td align="center" bgcolor="#FFFFFF"><span class="STYLE6"><?php echo $myrow[data];?></span></td>
  </tr>
<?php }?>
 两者的区别:continue语句只是结束本次循环,并不终止整个循环的执行;而break语句则是结束整个循环过程,不管判断执行循环的条件是否成立。
3)  return跳转语句
用于结束一个函数或者脚本文件的执行。如果在一个函数中调用return语句,将立即结束该函数的执行并将它的参数作为函数的值返回;如果在全局范围中调用,则当前脚本文件终止运行。使用最多的地方是自定义函数中,通过return语句返回变量的值。