紫郢青索

知之者不如好之者,好之者不如乐之者

用户工具

站点工具


PHP循环控制

循环问题

顺序打印1 到 100的自然数。这个时候,我们就不能写100个echo语句。

<?php
echo 1;
echo 2;
echo 3;
//....
?>

这时就可以使用循环控制

for循环

顺序打印1 到 100的自然数

<?php
for($n = 1; $n <= 100; $n++){
    echo $n . PHP_EOL;
}
?>

输出1 到 100之间的偶数

<?php
for($n = 2; $n <= 100; $n = $n+2){
    echo $n . PHP_EOL;
}
?>

另一种实现方法,输出1 到 100之间的偶数

<?php
for($n = 1; $n <= 100; $n++){
    if($n%2 != 0){
        continue; // 本次循环结束
    }
    echo $n . PHP_EOL;
}
?>

PHP 还提供了while循环语句

while循环

顺序打印1 到 100的自然数

<?php
$n = 1;
while($n <= 100){
    $n++;
    echo $n . PHP_EOL;
}
?>

输出1 到 100之间的偶数

<?php
$n = 2;
while($n <= 100){
    $n = $n+2;
    echo $n . PHP_EOL;
}
?>

另一种实现方法,输出1 到 100之间的偶数

<?php
$n = 1;
while(true){
    $n++;
    if($n > 100){
        break; // 循环结束
    }
    echo $n . PHP_EOL;
}
?>

foreach循环

针对数组和对象进行遍历,我们可以使用foreach语句。例如:

<?php
    $ary = array(
        'a' => 'A',
        'b' => 'B',
        'c' => 'C'
    );
    foreach($ary $key=>$val){
        echo 'key:' . $key . ', value:' . $val . PHP_EOL;
    }
?>

上面遍历数组的方式,执行一步,指针下移动一步,并且返回了当前元素的键($key) 和 值($val)。

另外一种方式

<?php
    $ary = array(
        'a' => 'A',
        'b' => 'B',
        'c' => 'C'
    );
    foreach($ary $val){
        echo $val . PHP_EOL;
    }
?>

这种方式遍历,执行一步,指针下移动一步,并且返回了当前值($val)。

我们要打印1 到 1000 或 50 - 500 的自然数,类似的这样的问题,我们发现其实只是改变了起始和终止的位置。

这是我们可以把它抽象为为一个方法,这就是 ☞ PHP的函数

:-D