PHP入门教程之流程控制语句详解
在PHP中,流控制语句主要有条件语句和循环语句组成。其中,流控制语句有if/else和switch语句;循环语句有while和for语句。
1. IF语句
在PHP中,IF语句有两种语法结构。一种用大括号表示语句块,一种用冒号表示语句块。前者一般用于纯代码中,后者一般用于代码和HTML结合时。两种写法如下:
<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('copy6985')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy6985>// 大括号表示语句块
if ($value) {
// 操作;
} elseif($value) {
// 操作;
} else {
// 操作;
}
// 冒号表示语句块
if ($value) :
// 操作;
elseif($value) :
// 操作;
else :
// 操作;
endif;
2. switch语句
switch语句和C语言有些相似,它可以使用数字和字符串做为判断值。它执行的代码是,从第一个匹配值(或者default)开始,到遇到break为止。所以,在写程序的时候一定不要忘记写break。不然会执行所有分支。代码示例如下:
<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('copy1054')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy1054>switch ($value) {
case 'a':
case 'b':
echo 'value is a or b.';
break;
case 'c':
echo 'value is c.';
break;
default:
echo 'value is others.';
break;
}
3. while语句
while语句和if语句一样,也用两种语法结构。大括号表示语句块以及冒号表示语句块表示语句块。两种写法如下:
<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('copy2830')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy2830>// 大括号表示语句块$i = 0;
while ($i < 5) {
echo $i;
}
// 冒号表示语句块
$i = 0;
while ($i < 5) :
echo $i;
endwhile;
4. do...while语句
do...while语句和while语句区别是while语句先判断后执行,而do...while语句是先执行后判断。也就是说,即便条件不符合要求,do...while语句也会执行一次。其写法如下:
<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('copy4343')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy4343>$i = 0;
do {
echo $i;
} while ($i < 5);
5. for语句
for语句里要注意的是,它先执行初始化代码,然后每一次循环首先执行判断语句,执行循环会再执行自增自减函数。也就是说,如果条件不符合,循环不会被执行。其语法结构也有两种,大括号表示语句块以及冒号表示语句块表示语句块。两种写法如下:
<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('copy4854')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy4854> // 大括号表示语句块for ($i = 0; $i < 5; $i ) {
echo $i;
}
// 冒号表示语句块
for ($i = 0; $i < 5; $i ) :
echo $i;
endfor;
6. foreach语句
foreach语句用于遍历整个数组。和for一样,它的语法结构也有两种,大括号表示语句块以及冒号表示语句块表示语句块。两种写法如下:
<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('copy1111')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy1111>// 大括号表示语句块foreach($array as $value) {
each $value;
}
// 冒号表示语句块
foreach($array as $value) :
each $value;
endforeach;
7. declare语句
declare语句指每执行N条语句后调用一个函数。如
<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('copy8266')">复制代码</td> </tr> <tr> <td height="auto" colspan="2" valign="top" bgcolor="#FFFFFF" style="padding:10px;" class="copyclass" id=copy8266>register_tick_function('test');declare(ticks = 2) {
print '1';
print '2';
print '3';
print '4';
print '5';
}
function test() {
print 'declare
';
}
这段代码的结果为
1
2
3
您可能感兴趣的文章:
适合入门的php基础系列教程
php入门教程(索引)
php入门基础教程之php流程控制
PHP入门教程之流程控制语句详解
php中有哪几种流程控制结构
php5中哪几种流程结构
PHP流程控制的替代语法示例
php入门教程-适合初学者教程
php怎么才能知道自己入门了
php中require和include的区别是什么?