在php中條件語句主要用到if else與if elseif及swicth case之類的語句了,這兩個語句是用到最多的。
一、if…else語句
if...else 語句
在條件成立時執行一塊程式碼,條件不成立時執行另一塊程式碼
語法:
1、簡單條件
if(条件){ …… } else{ …… }
<?php if (date("D") == "Sat") echo " 提醒你周末了,狂欢去"; ?>
範例:本例的執行部分有三行,且不可省略大括號。
<?php if (file_exists("/usr/local/lib/php3.ini")) { echo "以下是 PHP3 的配置文件<p><pre class="brush:php;toolbar:false">n"; readfile("/usr/local/lib/php3.ini"); echo "n"; } ?>
2、複雜條件
elseif 語句
與if...else 搭配使用,在若干條件之一成立時執行一個程式碼區塊
if(条件){ …… } elseif(条件){ …… } else{ …… }
範例:上面的例子來修改成更完整的處理。其中的 else 由於只有一行執行的指令,因此不用加上大括號。
<?php $f="/usr/local/lib/php3.ini"; if (file_exists($f)) { echo "以下是 PHP3 的配置文件<p><pre class="brush:php;toolbar:false">n"; readfile($f); echo "n"; } else echo "很抱歉,找不到 $f"; ?>
第三種就是遞迴的 if..else 循環,通常用在多種決策判斷時。它將數個 if..else 拿來合併運用處理。
直接看下面的例子
<?php if ($a > $b) { echo "a 比 b 大"; } elseif ($a == $b) { echo "a 等于 b"; } else { echo "a 比 b 小"; } ?>
上例只用二層的 if..else 循環,用來比較 a 和 b 兩個變數。實際要使用這種遞歸 if..else 迴圈時,請小心使用,因為太多層的迴圈容易使設計的邏輯出問題,或少打了大括號等,都會造成程式出現莫名其妙的問題。
二、Switch語句
1 語法:
switch(表达式){ case 值1: 语句 break; case 值2: 语句 break; default: 没有匹配的值时执行的语句 }
工作原理:
1.對表達式(通常是變數)進行一次計算
2.把表達式的值與結構中case 的值進行比較
3.如果存在匹配,則執行與case 關聯的代碼
4.代碼執行後,break 語句阻止程式碼跳入下一個case 中繼續執行
5.如果沒有case 為真,則使用default 語句
利用switch實作一個頁面多用途,首先建立test.php頁面:
<?php echo "<a href='solution.php?action=add'>增加</a><br><br>"; echo "<a href='solution.php?action=del'>删除</a><br><br>"; echo "<a href='solution.php?action=search'>查找</a><br><br>"; echo "<a href='solution.php?action=update'>更新</a>"; ?>
接著,讓我們來看看solution.php是如何處理這四種操作的。
<?php $action=$_GET["action"]; switch ($action) { case "add": echo "现在可以实现增加功能!"; break; case "del": echo "现在可以实现删除功能!"; break; case "search": echo "现在可以实现查询功能!"; break; case "update": echo "现在可以实现更新功能!"; break; } ?>
很簡單,我們先接收到action的值,運用switch語句根據action值的不同分別賦予它對應的運算。
以上是php條件語句if else與switch用法實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!