您好,登錄后才能下訂單哦!
這篇文章主要介紹“php判斷語句如何寫”,在日常操作中,相信很多人在php判斷語句如何寫問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php判斷語句如何寫”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
寫法:1、“if(條件){語句塊;}else if(條件){語句塊;}else{語句塊;}”;2、“switch(表達式){case 值1:語句塊;break;...case 值n:語句塊;break;default:語句塊;}”。
本教程操作環境:windows7系統、PHP7.1版,DELL G3電腦
在程序開發過程中,經常需要根據不同的情況,執行不同的代碼,這個時候就需要用到條件判斷,在PHP中,可使用if或者switch進行條件判斷,具體應根據實際場景進行選擇相應的條件語句:
1、if else語句
if else 語句是流程控制中根據條件判斷執行的一種。該語句執行時先對條件進行判斷,然后根據判斷結果做出相應的操作。它又可以細分為三種,分別是 if
語句、if...else
語句、if...else if...else
語句。
1)、if條件語句
if 語句是流程控制中最簡單的一種。只判斷某個條件是否為真,如果為真就執行特定的語句塊。語法格式如下:
if (判斷條件) { 語句塊; }
如果需要執行的語句塊包含一條以上的語句,則要使用{ }把 它們括起來,表示一個整體;如果要執行的語句只有一條,就可以省略大括號標記。像下面這樣:
if (判斷條件) 一條語句;
if 語句的執行流程如下圖所示:
【示例】 定義一個數組,使用 if 語句判斷這個數字是不是偶數,代碼如下所示:
<?php $num = 34; if ($num % 2 == 0) { echo '$num ='.$num.', 是偶數!'; } ?>
運行結果如下:
$num =34, 是偶數!
2)、if...else...條件語句
if 語句只能對判斷結果為真的情況執行操作,這在很多情況下是不夠的,于是就有了 if...else 這種形式的語句。與 if 判斷不同,if...else 語句不僅對判斷結果為真的情況執行操作,對非真的情況也可以執行相應的操作。
else 語句延伸了 if 語句,可以在 if 語句中表達式的值為 FALSE 時執行相應的語句。另外需要注意的是,else 語句是 if 語句的從句,必須和 if 語句一起使用,不能單獨存在。
if...else 語句的語法格式如下:
if (判斷條件) { 語句塊 1; } else { 語句塊 2; }
在上面的格式中,如果“判斷條件”為真,則執行“語句塊 1”;否則執行“語句塊 2”。“語句塊 1”和“語句塊 2”都可以包含多條語句。與 if 語句相同的是,如果“語句塊 1”和“語句塊 2”中都只包含一條語句的話,可以省略大括號{ },如下所示:
if (判斷條件) 語句塊 1; else 語句塊 2;
if...else 語句的執行流程如下圖所示:
示例】使用 rand() 函數生成一個隨機數 $num,然后判斷這個隨機數是偶數還是奇數,代碼如下所示:
<?php $num = rand(1,31); //生成一個 1~31 之間的隨機數 if ($num % 2 == 0) { echo '$num ='.$num.', 是偶數!'; } else { echo '$num ='.$num.', 是奇數!'; } ?>
運行結果如下:
$num =27, 是奇數!
3)、if...elseif...else...條件語句
else if 語句和 else 語句一樣,它延伸了 if 語句,else if 語句會根據不同的表達式來確定執行哪個語句塊。
在 PHP 中也可以將 else if 這兩個關鍵字合并在一起(如 elseif)來使用。else if 語句的語法格式如下所示:
if (判斷條件 1) { 語句塊 1; } else if (判斷條件 2) { 語句塊 2; } else if (判斷條件 3) { 語句塊 3; } ...... else if (判斷條件 n) { 語句塊 n; } else{ 語句塊 n+1; }
在上面的 else if 的語法中,如果第一個“判斷條件 1”為 TRUE,則執行“語句塊 1”語句;如果第二個“判斷條件 2”為 TRUE,則執行“語句塊 2”語句;以此類推。如果表達式的條件都不為 TRUE,則執行 else 子句中的“語句塊 n+1”語句,當然最后的 else 語句也可以省略。
在 else if 語句中同時只能有一個表達式為 TRUE,即在 else if 語句中只能有一個語句塊被執行。如果有多個表達式的值為 TRUE 時,只會執行第一個表達式所對應的語句塊。
if...else if...else 語句的執行流程如下圖所示:
【示例】根據成績判斷成績的優、良、中、差級別,代碼如下所示:
<?php $score = 89; if ($score > 90) { echo '成績的級別為:優!'; } else if ($score > 70) { echo '成績的級別為:良!'; } else if ($score > 60) { echo '成績的級別為:中!'; } else { echo '成績的級別為:差!'; } ?>
運行結果如下:
成績的級別為:良!
2、switch...case...條件語句
switch 語句和 if...else if...else 語句相似,也是一種分支結構,與 if...else if...else 語句相比 switch 語句更加簡潔明了。
switch 語句由一個表達式和多個 case 標簽組成,case 標簽后緊跟一個代碼塊,case 標簽作為這個代碼塊的標識。switch 語句的語法格式如下:
switch(表達式){ case 值 1: 語句塊 1; break; case 值 2: 語句塊 2; break; ... ... case 值 n: 語句塊 n; break; default: 語句塊 n+1; }
switch 語句根據表達式的值,依次與 case 中的值進行比較,如果不相等,繼續查找下一個 case;如果相等,就會執行對應的語句,直到 switch 語句結束或遇到 break 為止。
一般來說,switch 語句最終都有一個默認值 default,如果在前面的 case 中沒有找到相符的條件,則執行默認語句,和 else 語句類似。
switch 語句的執行流程如下圖所示:
在使用 switch 語句時應該注意以下幾點:
和 if 語句不同的是,switch 語句后面表達式的數據類型只能是整型或字符串,不能是 bool 型。通常這個表達式是一個變量名稱,雖然 PHP 是弱類型語言,在 switch 后面表達式的變量可以是任意類型數據,但為了保證匹配執行的準確性,最好只使用整型或字符串中的一種類型。
和 if 語句不同的是,switch 語句后面的花括號是必須有的。
case 語句的個數沒有規定,可以無限增加。但 case 標簽和 case 標簽后面的值之間應該有一個空格,值后面必須有一個冒號,這是語法的一部分。
switch 匹配完成以后,將依次逐條執行匹配的分支模塊中的語句,直到 switch 結構結束或者遇到了 break 語句才停止執行。所以,如果一個分支語句的后面沒有寫上 break 語句,程序將會繼續執行下一個分支語句的內容。
與 if 語句中的 else 類似,switch 語句中 default 標簽直接在后面加上一個冒號,看似沒有條件,其實是有條件的,條件就是“表達式”的值不能與前面任何一個 case 標簽后的值相等,這時才執行 default 分支中的語句。default 標簽和 if 中的 else 子句一樣,它不是 switch 語句中必需的,可以省略。
【示例】使用 date() 函數獲取當前星期的英文縮寫,根據縮寫打印今天是星期幾,代碼如下所示:
<?php $week = date('D'); switch($week){ case 'Mon': echo '星期一'; break; case 'Tue': echo '星期二'; break; case 'Wed': echo '星期三'; break; case 'Thu': echo '星期四'; break; case 'Fri': echo '星期五'; break; case 'Sat': echo '星期六'; break; case 'Sun': echo '星期日'; break; } ?>
運行結果如下:
星期四
到此,關于“php判斷語句如何寫”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。