最新消息:发现真没时间折腾VPS,最近又换了个空间。呵呵

PHP学习(5) 流控制语句

在PHP中,流控制语句主要有条件语句和循环语句组成。其中,流控制语句有if/else和switch语句;循环语句有while和for语句。

1. IF语句

在PHP中,IF语句有两种语法结构。一种用大括号表示语句块,一种用冒号表示语句块。前者一般用于纯代码中,后者一般用于代码和HTML结合时。两种写法如下:

PHP
<?php
// 大括号表示语句块
if ($value) {
    // 操作;
} elseif($value) {
    // 操作;
} else {
    // 操作;
}

// 冒号表示语句块
if ($value) :
    // 操作;
elseif($value) :
    // 操作;
else :
    // 操作;
endif;

2. switch语句

switch语句和C语言有些相似,它可以使用数字和字符串做为判断值。它执行的代码是,从第一个匹配值(或者default)开始,到遇到break为止。所以,在写程序的时候一定不要忘记写break。不然会执行所有分支。代码示例如下:

PHP
<?php
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语句一样,也用两种语法结构。大括号表示语句块以及冒号表示语句块表示语句块。两种写法如下:

PHP
<?php
// 大括号表示语句块
$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语句也会执行一次。其写法如下:

PHP
<?php
$i = 0;
do {
    echo $i;
} while ($i < 5);

5. for语句

for语句里要注意的是,它先执行初始化代码,然后每一次循环首先执行判断语句,执行循环会再执行自增自减函数。也就是说,如果条件不符合,循环不会被执行。其语法结构也有两种,大括号表示语句块以及冒号表示语句块表示语句块。两种写法如下:

PHP
<?php
// 大括号表示语句块
for ($i = 0; $i < 5; $i++) {
    echo $i;
}
// 冒号表示语句块
for ($i = 0; $i < 5; $i++) :
    echo $i;
endfor;

6. foreach语句

foreach语句用于遍历整个数组。和for一样,它的语法结构也有两种,大括号表示语句块以及冒号表示语句块表示语句块。两种写法如下:

PHP
<?php
// 大括号表示语句块
foreach($array as $value) {
    echo $value;
}
// 冒号表示语句块
foreach($array as $value) :
    echo $value;
endforeach;

7. declare语句

declare语句指每执行N条语句后调用一个函数。如

PHP
<?php
register_tick_function('test');
declare(ticks = 2) {
    print '1';
    print '2';
    print '3';
    print '4';
    print '5';
}
function test() {
    print 'declare';
}

这段代码的结果为

12declare
34declare
56declare

参考资料:
PHP程序设计,2003,第二章 语言基础,流控制语句

转载请注明:宇托的狗窝 » PHP学习(5) 流控制语句

发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址