PHP条件语句(if else/switch)语法与示例

在php中条件语句主要用到if else与if elseif及swicth case之类的语句了,这两语句是用到最多的,下面我来给大家普通一下。

一、if…else语句

if...else 语句

在条件成立时执行一块代码,条件不成立时执行另一块代码

语法:

1、简单条件

  1. if(条件){
  2. ……
  3. }
  4. else{
  5. ……
  6. }

例,代码如下:

  1. <?php
  2. if (date("D") == "Sat") echo " http://www.phpfensi.com提醒你周末了,狂欢去";
  3. ?>

范例:本例的执行部分有三行,不可省略大括号,代码如下:

  1. <?php
  2. if (file_exists("/usr/local/lib/php3.ini")) {
  3. echo "以下是 PHP3 的配置文件<p><pre>n";
  4. readfile("/usr/local/lib/php3.ini");
  5. echo "</pre>n";
  6. }
  7. ?>

2、复杂条件

elseif 语句

与 if...else 配合使用,在若干条件之一成立时执行一个代码块

  1. if(条件){
  2. ……
  3. }
  4. elseif(条件){
  5. ……
  6. }
  7. else{
  8. ……
  9. }

范例:上面的例子来修改成更完整的处理。其中的 else 由于只有一行执行的指令,因此不用加上大括号,代码如下:

  1. <?php
  2. $f="/usr/local/lib/php3.ini";
  3. if (file_exists($f)) {
  4. echo "以下是 PHP3 的配置文件<p><pre>n";
  5. readfile($f);
  6. echo "</pre>n";
  7. } else echo "很抱歉,找不到 $f";
  8. ?>

第三种就是递归的 if..else 循环,通常用在多种决策判断时。它将数个 if..else 拿来合并运用处理。

直接看下面的例子,代码如下:

  1. <?php
  2. if ($a > $b) {
  3. echo "a 比 b 大";
  4. } elseif ($a == $b) {
  5. echo "a 等于 b";
  6. } else {
  7. echo "a 比 b 小";
  8. }
  9. ?>

上例只用二层的 if..else 循环,用来比较 a 和 b 两个变量。实际要使用这种递归 if..else 循环时,请小心使用,因为太多层的循环容易使设计的逻辑出问题,或者少打了大括号等,都会造成程序出现莫名其妙的问题

二、Switch语句

1 语法:

  1. switch(表达式){
  2. case 值1:
  3. 语句
  4. break;
  5. case 值2:
  6. 语句
  7. break;
  8. default:
  9. 没有匹配的值时执行的语句
  10. }

工作原理:

1.对表达式(通常是变量)进行一次计算

2.把表达式的值与结构中 case 的值进行比较

3.如果存在匹配,则执行与 case 关联的代码

4.代码执行后,break 语句阻止代码跳入下一个 case 中继续执行

5.如果没有 case 为真,则使用 default 语句

例,代码如下:

  1. <?php
  2. switch ($d=date("D"))
  3. {
  4. case "Mon";
  5. echo "周一";
  6. break;
  7. case "Tue";
  8. echo "周二";
  9. break;
  10. case "Wed";
  11. echo "周三";
  12. break;
  13. case "Thu";
  14. echo "周四";
  15. break;
  16. case "Fir";
  17. echo "周五";
  18. break;
  19. case "Sat";
  20. echo "周六";
  21. break;
  22. case "Sun";
  23. echo "周日";
  24. break;
  25. }
  26. ?>

另外一个实例,利用switch实现一个页面多用途,首先建立test.php页面,代码如下:

  1. <?php
  2. echo "<a href='solution.php?action=add'>增加www.phpfensi.com</a><br><br>";
  3. echo "<a href='solution.php?action=del'>删除</a><br><br>";
  4. echo "<a href='solution.php?action=search'>查找</a><br><br>";
  5. echo "<a href='solution.php?action=update'>更新</a>";
  6. ?>

接着,让我们看看solution.php是如何处理这四种操作的,代码如下:

  1. <?php
  2. $action=$_GET["action"];
  3. switch ($action)
  4. {
  5. case "add":
  6. echo "现在可以实现增加功能!";
  7. break;
  8. case "del":
  9. echo "现在可以实现删除功能!";
  10. break;
  11. case "search":
  12. echo "现在可以实现查询功能!";
  13. break;
  14. case "update":
  15. echo "现在可以实现更新功能!";
  16. break;
  17. }
  18. ?>

很简单,我们首先接收到action的值,用switch语句根据action值的不同分别赋予它相应的操作,怎么样,是不是比大家想象中要简单很多.