php学习笔记之--php流程控制分支、循环结构

php流程控制分支、循环结构

目录

  第一章 分支结构

    1.1单路分支

    1.2双路分支

    1.3多路分支

    1.4嵌套分支

    1.5简单计数器的实现

  第二章 循环结构

    2.1 while 循环

    2.2 do - while 循环

    2.3 for 循环

               2.4 break; continue; exit; return;

第一章 分支结构

1.1单路分支
     //条件bool, true或false,  > < == !=  & || !  isset()
      if(条件)
         执行下面一条语句

      if(条件)
      {
          代码段;
          代码段;
      }
      
 1.2 双路分支
    使用else从句

    if(条件)
      执行一条语句
    else
      执行一条语句

    if(条件){
      一条或多条代码  
    }else{
      一条或多条代码
    }
  1.3 多路分支
     可以使用 if  else if  和 switch case 
     //这是一种互斥的关系。
     if(条件){

     }elseif(条件){

     }elseif(条件){

     }else if(条件){

     }else{

     }

     switch(变量){
      case 值:
          代码;
          break;
      case 值1:
          代码;
          break;
      default:
          代码;

     }
    如果是判断一段范围我们使用elseif
    如果是单个值匹配我们使用switch
  1.4 嵌套分支
      if(){
          if(){

          }else{
              if(){

              }
          }
      }else{
          if(){

          }else{
              swicth(){

              }
          }
      }
简单计算器
<html>
<head>
<title>PHP实现简单计算器</title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
</head>
<?php
$num1=true;
$num2=true;
$numa=true;
$numb=true;
$message="";
//单路分支
if(isset($_GET["sub"])){
if($_GET["num1"]==""){
$num1=false;
$message.="第一个数不能为空";

}
if(!is_numeric($_GET["num1"])){
$numa=false;
$message.="第一个数不是数字";
}

if($_GET["num2"]==""){
$num2=false;
$message.="第二个数不能为空";

}
if(!is_numeric($_GET["num2"])){
$numb=false;
$message.="第二个数不是数字";
}


if($num1 && $num2 && $numa && $numb) {
$sum=0;
//多路分支switch
switch($_GET["ysf"]){
case "+":
$sum=$_GET["num1"]+$_GET["num2"];
break;
case "-":
$sum=$_GET["num1"]-$_GET["num2"];
break;
case "x":
$sum=$_GET["num1"]*$_GET["num2"];
break;
case "/":
$sum=$_GET["num1"]/$_GET["num2"];
break;
case "%":
$sum=$_GET["num1"]%$_GET["num2"];
break;
}
}
}
?>

<body>
<table align="center" border="1" width="500">
<caption><h1>计算器</h1></caption>
<form action="jsq.php">
<tr>
<td>
<input type="text" size="5" name="num1" value="<?php echo $_GET["num1"] ?>" >
</td>
<td>
<select name="ysf">
<option value="+" <?php if($_GET["ysf"]=="+") echo "selected" ?>>+</option>
<option value="-" <?php if($_GET["ysf"]=="-") echo "selected" ?>>-</option>
<option value="x" <?php echo $_GET["ysf"]=="x"?"selected":"" ?>>x</option>
<option value="/" <?php echo $_GET["ysf"]=="/"?"selected":"" ?>>/</option>
<option value="%" <?php echo $_GET["ysf"]=="%"?"selected":"" ?>>%</option>
</select>
</td>
<td>
<input type="text" size="5" name="num2" value="<?php echo $_GET["num2"] ?>">
</td>
<td>
<input type="submit" name="sub" value="计算">
</td>
</tr>

<?php
if(isset($_GET["sub"])){

echo '<tr><td colspan="5">';
if($num1 && $num1 && $numa && $numb){
echo "结果:".$_GET["num1"]." ".$_GET["ysf"]." ".$_GET["num2"]." = ".$sum;
}else{
echo $message;
}
echo '</td></tr>';
}
?>
</form>
</table>

</body>
</html>


第二章 循环结构

2.1while循环
   if(表达式)
       只一次语句
 
   while(表达式)
       反复执行一条语句;
 
   while(表达式){
       反复执行这个循环体
   }
 
   while是先判断条件,成立则执行
注意死循环 
$i=0;
while($i<100)
{
if($i==3)
continue; //为死循环,因为一到此句就会跳过$i++所以,$i永远是2。
echo ".$i."."<br>";
$i++;
}
2.2 do-while循环
   do-while是先执行再判断条件 
2.3for 循环    
    for(初使化;条件表达式;增量){
       循环体
    }
 
根据循环条不同有两种类型的循环 
   一种:计数循环       for 
   另一种:条件型循环   while do-while      
 
2.4几个和循环有关的语句
 
   break     退出该层循环不再执行
   continue  退出该层的本次循环
   exit      停止程序运行,不输出内容
   return    返回函数,若在主函数中,则会退出函数并返回一值
for($i=1;$i<=9;$i++)
{
for($j=1;$j<=$i;$j++)
{
if($j==4)
break; // 退出$j循环不再执行
break 2; // 退出$i循环不再执行
continue;//本次$j循环 不执行,执行下一次
continue 2;//本次$i循环不执行,执行下一次
echo $j."*".$i."=".$j*$i."&nbsp;&nbsp";

}
echo "<br>";
}



posted @ 2011-10-09 21:30  漠北风  阅读(886)  评论(0编辑  收藏  举报