PHP分支结构
分支结构是指程序在执行过程中根据要求条件改变程序的执行顺序。 即,在满足条件的情况下执行一个叙述块,相反的情况下执行另一个叙述块。 程序中使用分支结构有单一条件分支结构这几种形态.
双向条件分支结构。
多方向条件分支结构。
巢状条件分支结构。
单条件分支和多条件IF和IF ELSE
if结构是单条件分支结构,if语句的基本格式是计算一个表达式,根据计算结果决定是否执行后续语句。 if后括号中的“表达式”是执行条件,条件返回的结果只能是布尔值。 通常,由比较运算符和逻辑运算符组成的表达式计算的结果值,以及返回布尔型的函数。 如果传递了其他类型的值,也会自动转换为布尔型TRUE或FALSE。 如果表达式为TRUE,则执行代码块,否则不执行。
样品? php
$fraction=50;
//定义整数
if($fraction=60$fraction=70 ) {
echo '你的分数合格了。 请加油哦。' ;
echo '
';
}
//单分支判断整数为60以上或70以下
echo '
'; if($fraction=60$fraction=70 ) :
echo '你的分数合格了。 请加油哦。' ;
echo '
';
结尾;
//模板语法单枝判定整数为60以上或70以下
echo '
'; if($fraction70$fraction=80 ) {
echo '加油。 可以进入前十名!' ;
echo '
';
}
else if ($ fraction=60 $ fraction=70 )
{
echo '你的分数合格了。 请加油哦。' ;
echo '
';
}
else if ($ fraction=90 $ fraction 100 ) {
echo '胜利就在脚下,成功离你一步之遥!' ;
echo '
';
}
elseif($fraction==100 ) {
我对echo的功夫没有信心。 恭喜你获得满分!' ;
echo '
';
}
else{
echo '我不会告诉你的分数。 醒来吧少年!' ;
echo '
';
}
echo '
'; //与多个分支判断点数对应的条件
if($Fraction=60$Fraction=70 ) :echo '你的分数合格了。 请加油哦。' ;
请加油elseif($fraction70$fraction=80 ) :echo )。 可以进入前十名! ';
else if ($ fraction=90 $ fraction 100 ) :echo )胜利就在脚下,成功离你一步之遥! ';
恭喜在elseif($fraction==100 ) :echo )上下功夫的人,获得满分! ';
else:echo '我不会告诉你的分数。 醒来吧少年!' ;
结尾;
//对应于多分支判断分数的条件,点:如果分数为100,则运算符必须等于==2
echo '
'; 样品图
在例子中使用普通的写法和模板的写法。 虽然if在条件的制定上有点麻烦,但是用模板进行了相对说明。
交换机
用于根据多个不同的条件执行不同的动作。
首先,计算一次简单的公式n (通常是变量)。 将表达式的值与结构中每个case的值进行比较。 如果存在匹配项,请执行与case相关联的代码。 代码运行后,使用break可防止代码跳至下一个case并继续执行。 default语句在不匹配(即case不为真)时执行。
范例: php
$fraction=81;
切换($ fraction ) {
case $ fraction=60 $ fraction 70:
echo '你的分数合格了。 请加油哦。' ;
echo $fraction;
布雷克;
case $ fraction=70 $ fraction 80:
echo '你的分数很普通。 请加油哦。' ;
布雷克;
ca
se$fraction>=80&&$fraction<90:echo"在努力点您能进入前10了!";
break;
case$fraction>=90&&$fraction<100:
echo"继续努力,成功和您一步之遥!";
break;
case$fraction==100:
echo"恭喜您获得最高成绩,继续保持!";
break;
default:
echo"少年很遗憾,忘记您的分数吧!";
}
示例中使用了swith多条件查询,相对if使用switch更加简洁方便。case可以使用条件查询,也可以使用对等查询,本示例是查询分数对应的话,使用了条件查询。
示例图
PHP 循环
在您编写代码时,您经常需要让相同的代码块一次又一次地重复运行。我们可以在代码中使用循环语句来完成这个任务。
在 PHP 中,提供了下列循环语句:
while - 只要指定的条件成立,则循环执行代码块
do…while - 首先执行一次代码块,然后在指定的条件成立时重复这个循环
for - 循环执行代码块指定的次数
foreach - 根据数组中每个元素来循环代码块
while 循环
while 循环将重复执行代码块,直到指定的条件不成立。
语法while(条件)
{
要执行的代码;
}
示例:
$i=0;
$num=0;
while($i<100){
$i++;
$num=$num+$i;
}
echo $num;
echo"
";//假如投资的年利率为5%,试求从1000块增长到5000块,需要花费多少年
$m=1000;
$m1=5000;
$i=0;
while($m
{
$m=$m+$m*0.05;
$i=$i+1;
}
echo $i;
示例中用1加到100最后的和是5050,用了一个小案例加深对while的理解,重点i=0表示执行完1次是1年,。
示例图:
do…while 语句
do…while 语句会至少执行一次代码,然后检查条件,只要条件成立,就会重复进行循环。
语法do
{
要执行的代码;
}
while(条件);
示例:
$i=0;
$num=0;
do{
$i++;
$num=$num+$i;
}
while($i<100);
echo $num;
echo"
";//假如投资的年利率为5%,试求从1000块增长到5000块,需要花费多少年
$m=1000;
$m1=5000;
$i=1;
do{
$m=$m+$m*0.05;
echo"第".$i."年".$m."
";
$i++;
}while($m
示例用do..while和while不同的是在定义计数器的初始值,在while中$i=0,在do while中由于执行完一次代码在来循环,所有$i=1。
示例图
for 循环
for 循环用于您预先知道脚本需要运行的次数的情况。
语法for(初始值;条件;增量)
{
要执行的代码;
}
注释:上面的初始值和增量参数可为空,或者有多个表达式(用逗号分隔)
参数:初始值:主要是初始化一个变量值,用于设置一个计数器(但可以是任何在循环的开始被执行一次的代码)。
循环执行的限制条件。如果为 TRUE,则循环继续。如果为 FALSE,则循环结束。
主要用于递增计数器(但可以是任何在循环的结束被执行的代码)。
示例:
$num=0;
for($i=0;$i<=100;$i++){
$num=$num+$i;
}
echo $num;
//假如投资的年利率为5%,试求从1000块增长到5000块,需要花费多少年
echo"
";
$m=1000;
$m1=5000;
for($i=0;$m
{
$m=$m+$m*0.05;
}
echo"第".$i."年".$m."
";
echo"
";for($i=1;$i<=9;$i++)
{
for($j=1;$j<=$i;$j++){
echo $i."X".$j."=".$i*$j;
}
echo"
";
}
echo"
";$mx=array('刘德华','张学友','郭富城','黎明');
for($i=0;$i
{
echo"mx[".$i."]=>".$mx[$i];
echo"
";
}
echo"
";$arr=array(array("yxdbq","20","男"),
array("整齐的白云","25","男"),
array("radlf","19","女"),
array("ssdh","25","女"));
for($i=0;$i
for($j=0;$j
echo $arr[$i][$j];
}
}
示例中同样的用1到100的累加,和对年利率的计算,for相比while要简便的多。也是PHP中常用的循环,示例中还用for写了99乘法表和对数组的遍历。在数组遍历中使用了count函数得到数组的长度。
示例图:
foreach 循环用于遍历数组
foreach($arrayas$value)
{
要执行代码;
}
每进行一次循环,当前数组元素的值就会被赋值给 $value 变量(数组指针会逐一地移动),在进行下一次循环时,您将看到数组中的下一个值。
示例
$ll=array('金银花','女','23','13654548778','57545@qq.com');
foreach($llas$value){
echo $value;
echo"
";
}
echo"
";$bm=array("市场部"=>"执着的电源","产品部"=>"王凯","财务部"=>"xhdg");
foreach($bmas$key=>$value)
{
echo"优秀部门-".$key;
echo"
";
echo"姓名优秀员工-:".$value;
echo"
";
}
echo"
";$wage=array(
"市场部"=>array("企业组"=>
array(1,"时尚的水蜜桃","市场经理",8000),
array(2,"贪玩的自行车","市场专员",5000),
array(3,"xlmdc","市场专员",7000)
),
"产品部"=>array("包装组"=>
array(1,"时尚的水蜜桃","产品经理",9000),
array(2,"贪玩的自行车","产品专员",6000),
array(3,"xlmdc","产品专员",5000)
),
"账务部"=>array("会计组"=>
array(1,"时尚的水蜜桃","账务经理",7000),
array(2,"贪玩的自行车","账务专员",6000),
array(3,"xlmdc","账务专员",5000)
)
);
foreach($wageas$key=>$value)
{
echo"
echo"
".$key."";echo"
编号姓名职务月薪";foreach($valueas$ka=>$v)
{
echo"
";foreach($vas$b=>$c)
{
echo"
".$c."";}
echo"
";}
echo"
";}
示例中使用foreach对一、二维数、多维数组组遍历,结合HTML做一个表的输出,在多维数组的使用中定义了循环变量,对多维数组输出
示例图