PHP 条件语句基本语法结构
if单分支的基本语法结构
if(条件表达式){
//执行语句;
}
if双分支
基本语法结构
if(条件表达式){
//执行语句;
}else{
//执行语句;
}
if多重分支
基本语法结构是
if(条件表达式){
//执行语句;
}else if (条件表达式){
//执行语句;
}else if(条件表示式){
//执行语句;
}else{//这里可能还有更多的else if
//执行语句;
}
☞ 对上面的结构请注意:
1) else if 可以有一个,也可以有多个
2) else 可以没有
例
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy8492')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy8492><html>
<FORM METHOD=POST ACTION="">
帐号: <INPUT TYPE="text" NAME="account"><BR>
密码: <INPUT TYPE="text" NAME="password"><BR>
<INPUT TYPE="submit" value="送出">
</FORM>
</html>
<?php
if($account == "lord" && $password == "pass"){
echo "欢迎 $_POST[account], 你的密码是 $_POST[password]";
}elseif($_POST[account] == "god" && $_POST[password] == "dog"){
$y = date("Y") - 1911;
$m = date("m");
$d = date("d");
echo "欢迎 $_POST[account], 今天是民国".$y."年".$m."月".$d."日";
}else{
echo "登入失败:<hr> 输入的资料:<br>帐号: $_POST[account] <br>密码: $_POST[password]";
}
?>
switch分支语句
基本语法结构
switch(表达式){
case 常量1:
//执行语句;
break;
case 常量2:
//执行语句;
break;
defual:
//执行语句;
break;
}
例
下面两个例子用不同方法实现同样的事情,第一个是用 if...elseif...else 语句,一个使用 switch语句。
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy9643')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy9643><?phpif ($i == 0) { echo "i equals 0";} elseif ($i == 1) { echo "i equals 1";} elseif ($i == 2) { echo "i equals 2";}else {
echo "i is not equal to 0, 1 or 2";
}
?>
上面这段 PHP 代码的意思是:如果变量 $i 等于 0,则输出 "i equals 0";如果变量 $i 等于 1,则输出 "i equals 1";如果变量 $i 等于 2,则输出 "i equals 2";如果都不是,则输出"i is not equal to 0, 1 or 2"。
switch 语句和 elseif 语句的比较
在 switch 语句中,条件只求一次,然后和每个 case 比较,而在 elseif 语句中,条件会再次求值。如果你的条件比较复杂,或者是多次循环,用 switch 语句速度会更加快些。
isEmpty="";
$isEmpty=" 非空 ";
$test = empty($isEmpty)?"":trim($isEmpty);
三目运算符?: 根据前面的条件empty($isEmpty)true或者false,条件为true时,计算?后面的表达式,false时计算:后面的表达式。
如果不习惯可以改成如下代码
<table width="620" align="center" border="0" cellpadding="1" cellspacing="1" style="background:#FB7"> <tr> <td width="464" height="27" bgcolor="#FFE7CE"> 代码如下</td> <td width="109" align="center" bgcolor="#FFE7CE" style="cursor:pointer;" onclick="doCopy('copy2242')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy2242>if (empty($isEmpty)) //条件成立
{
$cookie = "";
}
else
{
$cookie = trim($isEmpty);
}
☞ 请注意:
1) case 语句有一到多
2) defaul 语句可以没有(根据自己代码的业务逻辑)
3) 通常,在case 语句后,要带break ,表示退出switch语句
4) 常量的类型 (int, float, 字符串, 布尔型)
补充
比较运算符。
$a == $b 等于 TRUE,如果 $a 等于 $b。
$a != $b 不等 TRUE,如果 $a 不等于 $b。
$a <> $b 不等 TRUE,如果 $a 不等于 $b。
$a < $b 小与 TRUE,如果 $a 严格小于 $b。
$a > $b 大于 TRUE,如果 $a 严格 $b。
$a <= $b 小于等于 TRUE,如果 $a 小于或者等于 $b。
$a >= $b 大于等于 TRUE,如果 $a 大于或者等于 $b。
逻辑运算符。
$a and $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a or $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。
$a xor $b Xor(逻辑异或) TRUE,如果 $a 或 $b 任一为 TRUE,但不同时是。
! $a Not(逻辑非) TRUE,如果 $a 不为 TRUE。
$a && $b And(逻辑与) TRUE,如果 $a 与 $b 都为 TRUE。
$a || $b Or(逻辑或) TRUE,如果 $a 或 $b 任一为 TRUE。
您可能感兴趣的文章:
php入门基础教程之php流程控制
php if else swicth条件控制语句学习笔记
PHP基础之流程控制语句
php5中哪几种流程结构
php if elseif 条件判断语句使用方法
PHP的控制语句
小白必看的Python分支、循环和条件
VBScript 条件语句
PHP 条件语句基本语法结构
php中有哪几种流程控制结构