首页 > 开发 > PHP > 正文

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

2024-05-04 23:07:08
字体:
来源:转载
供稿:网友

在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.Vevb.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.          ……  

范例:上面的例子来修改成更完整的处理。其中的 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.                  没有匹配的值时执行的语句  

工作原理:

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.Vevb.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.  
  4. switch ($action)  
  5.  {  
  6.   case "add":  
  7.   echo "现在可以实现增加功能!";  
  8.   break;  
  9.   case "del":  
  10.   echo "现在可以实现删除功能!";  
  11.   break;  
  12.   case "search":  
  13.   echo "现在可以实现查询功能!";  
  14.   break;  
  15.   case "update":  
  16.   echo "现在可以实现更新功能!";  
  17.   break;  
  18.  }  
  19.  ?> 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表