abstract:<?php/** * 流程控制之分支結(jié)構(gòu) * 1. 分支:單分支,雙分支,多分支,switch * 2. 分支結(jié)構(gòu)使用腳本具備了簡單的人工智能 *//** * 老師,馬上就要考試了,如果我考的不好,怎么辦? * 那就補(bǔ)考唄,你知道,在程序中,如何實(shí)現(xiàn): 如果考得不好,怎么辦? * 不知道,趕緊給我講講吧 * 如果
<?php
/**
* 流程控制之分支結(jié)構(gòu)
* 1. 分支:單分支,雙分支,多分支,switch
* 2. 分支結(jié)構(gòu)使用腳本具備了簡單的人工智能
*/
/**
* 老師,馬上就要考試了,如果我考的不好,怎么辦?
* 那就補(bǔ)考唄,你知道,在程序中,如何實(shí)現(xiàn): 如果考得不好,怎么辦?
* 不知道,趕緊給我講講吧
* 如果想到程序中,實(shí)現(xiàn)條件判斷,就要用到分支控制,下面我就用實(shí)例來習(xí)流程控制中的分支控制
*/
//聲明變量$grade,表示成績,并在聲明時初始化為80
$grade = 70;
//1.單分支
if ($grade >= 60) {
echo '及格啦~~<br>';
}
//2.雙分支
$grade = 50;
if ($grade >= 60) {
echo '及格啦~~<br>';
} else {
echo '準(zhǔn)備補(bǔ)考吧,騷年~~<br>';
}
echo '<hr>';
//實(shí)際上,我們之前已經(jīng)見過這種分支結(jié)構(gòu)了,不過我們當(dāng)時使用的是簡寫語法
//雙分支簡寫: 條件 ? 真 : 假 ;
//將剛才的案例簡寫
echo ($grade >= 60) ? '及格啦~~<br>' : '準(zhǔn)備補(bǔ)考吧,騷年~~<br>';
//在判斷某個變量是否定義的時候,非常有用
//例如,如果變量已定義,那么就直接使用,否則就給他一個默認(rèn)值
//$site = isset($site) ? $site : 'php中文網(wǎng)';
$site = isset($site) ? : 'php中文網(wǎng)';
echo $site;
echo '<hr>';
//3.多分支
$grade = 75;
$grade = 85;
$grade = 95;
if ($grade < 60) {
echo '準(zhǔn)備補(bǔ)考吧,騷年~~<br>';
} elseif (($grade >= 60) && ($grade < 80)) {
echo '太棒了,這是要成為學(xué)霸的節(jié)奏呀~~<br>';
} elseif (($grade >= 80) && ($grade < 90)) {
echo '恭喜,你已經(jīng)進(jìn)入到了學(xué)霸的行列啦~~<br>';
} else {
echo '你來教,我走~~<br>';
}
echo '<hr>';
//4.switch
//switch,可以讓多分支判斷的結(jié)構(gòu)更加的清晰
//下面用switch結(jié)構(gòu)將上面的多分支案例進(jìn)行重寫
$grade = 80;
switch ($grade) {
case ($grade < 60):
echo '準(zhǔn)備補(bǔ)考吧,騷年~~<br>';
break;
case (($grade >= 60) && ($grade < 80)):
echo '太棒了,這是要成為學(xué)霸的節(jié)奏呀~~<br>';
break;
case (($grade >= 80) && ($grade < 90)):
echo '恭喜,你已經(jīng)進(jìn)入到了學(xué)霸的行列啦~~<br>';
break;
default:
echo '你來教,我走~~<br>';
break;
}
//switch()分支,更多的應(yīng)用場景是根據(jù)一個變量的值,來確定執(zhí)行哪個分支
$brand = 'Apple';
$brand = 'HUAWEI';
$brand = 'MI';
switch (strtolower($brand)) {
case 'apple':
echo '您選擇是蘋果手機(jī)<br>';
break;
case 'huawei':
echo '您選擇是華為手機(jī)<br>';
break;
case 'mi':
echo '您選擇是小米手機(jī)<br>';
//每個分支執(zhí)行完畢,應(yīng)該用break進(jìn)行跳出,否則會順序執(zhí)行下去的
// break;
case 'oppo':
echo '您選擇是oppo手機(jī)<br>';
break;
default:
echo '您選擇的手機(jī)品牌暫時未收錄~~<br>';
break;
}
/**
* 老師,我明白了,程序中的條件判斷有單分支,雙分支,多分支三種,多分支建議用switch結(jié)構(gòu)進(jìn)行簡化,是不是?
* 是的,你這么聰明,考試肯定能通過,放心吧~~
*/
Correcting teacher:天蓬老師Correction time:2019-08-15 10:46:33
Teacher's summary:作業(yè) 不是這樣寫的
<?php
/**
* 流程控制之分支結(jié)構(gòu)
* 1. 分支:單分支,雙分支,多分支,switch
* 2. 分支結(jié)構(gòu)使用腳本具備了簡單的人工智能
*/
/**
* 老師,馬上就要考試了,如果我考的不好,怎么辦?
* 那就補(bǔ)考唄,你知道,在程序中,如何實(shí)現(xiàn): 如果考得不好,怎么辦?
* 不知道,趕緊給我講講吧
* 如果想到程序中,