PHP的控制结构
分支结构语句
1.if语句
if(布尔表达式){
//语句体
}
例子:
- <?php
- $score=90;
- if ($score>80){
- echo "优秀";
- }
- ?>
2.if…else
if(布尔表达式){
//语句体1
}else{
//语句体2
}
-----------------
if(布尔表达式){
//语句体1
}else{
//语句体2
}elseif{
//语句体3
}
例子:
- <?php
- $hour=9;
- if($hour<10){
- echo "早上好";
- }else{
- echo "上午好";
- }
- ?>
- -------------------
- <?php
- $secretNumber =453;
- $guess = 422;
- if($guess == $secretNumber){
- echo "<p>恭喜你,猜对了!</p>";
- }elseif ($guess-$secretNumber)<10{
- echo "<p>您猜的数字已经很接近了!</p>";
- }else{
- echo "<p>对不起,您的答案与正确答案有段距离!</p>";
- }
- ?>
3.switch
switch(<布尔表达式>){
case 条件1;
执行过程
break;
case 条件2;
执行过程
break;
……
defalut;
执行过程;
break;
}
例子:使用switch语句判断浏览器语言
- <?php
- $lang = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
- $lang = str_replace(strstr($lang, ','),'',$lang);
- //根据来源语言来分别处理
- switch ($lang){
- case 'zh-cn':
- header('Location:http://cn.yahoo.com/');
- break;
- case 'zh-tw':
- header('Location:http://tw.yahoo.com/');
- break;
- case 'ko':
- header('Location:http://kr.yahoo.com/');
- break;
- case 'jp':
- header('Location:http://www.yahoo.com.jp/');
- break;
- default:
- header('Location:http://www.yahoo.com/');
- break;
- }
循环控制语句
1.while
while(布尔表达式){
//语句体
}
例子:
- <?php
- $result = 1;
- while ($n > 0){
- $result *= $n--;
- }
- echo "结果为 $result";
- ?>
2.do…while
do{
//语句体
}while(条件表达式);
例子:
- <?php
- $i=0;
- do{
- echo $i;
- }while ($i>0);
- ?>
3.for循环
for(初值表达式;条件表达式;计数器/表达式){
//语句体
}
----------
foreach(关联数组 as $key => $value){
//语句体
}
例子:
- <?php
- for ($i=0;$i<10;$i++){
- print "$i 的平方值是:". $i*$i . "<br>";
- }
- ?>
4.foreach循环
foreach(数组 as $value){
//语句体
}
例子:
- <?php
- $links = array("www.mysql.com","www.php.net","www.apache.org");
- echo "<b>PHP在线资源</b>:<br>";
- foreach ($links as $link) {
- echo "<a href=\"http://$links\">$link</a><br>";
- }
- ?>
- ----------------------------------
- <?php
- //保存一个学生成绩的关联数组
- $students = array("chinese"=>80,
- "english"=>73,
- "math"=>45);
- foreach ($students as $subject => $score){
- echo "各科成绩:$subject=>$score<br>";
- }
- ?>
5.循环控制:break和continue
break 功能是强制终止所在语句体的循环操作
continue 功能是在跳过continue下面的所有语句重新开始循环
例子:
- <?php
- //素数数组列举
- $primes = array(2,3,5,7,11,13,17,19,23,29,31,37,41,43,47);
- for ($count=1;$count++;$count<1000){
- //随机生成1-50之间的数字
- $randomNumber=rand(1, 50);
- if (in_array($randomNumber, $primes)){
- echo $randomNumber;
- //中断循环
- break;
- }else{
- echo "<p>在 $randomNumber 数字中没有找到素数</p>";
- }
- }
- ?>
- ----------------
- <?php
- $usernames=array("孙大东","赵二毛","roger","Ericli","佚名","raymond");
- for ($x=0;$x<count($usernames);$x++){
- if ($usernames[$x]=="佚名"){
- //如果是"佚名"则跳出本次循环
- continue;
- }
- echo "公司成员:$usernames[$x]<br>";
- }
- ?>
转载于:https://blog.51cto.com/bighuamao/978432