php for 循环语句使用方法详细说明

前端之家收集整理的这篇文章主要介绍了php for 循环语句使用方法详细说明前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

for循环只是一个多一点的代码,同时循环添加到它。而所涉及的一个循环的共同任务是: 设置一些计数器变量的初始值。
请检查条件语句是正确的。
执行中的代码循环。
增量在每个迭代结束通过循环计数器。
for循环允许你定义一个简单的代码行这些步骤。它似乎有一种奇怪的形式,所以一定要密切注意语法用! for 循环的语法是: for (expr1; expr2; expr3)
statement 第一个表达式(expr1)在循环开始前无条件求值一次。 expr2 在每次循环开始前求值。如果值为 TRUE,则继续循环,执行嵌套的循环语句。如果值为 FALSE,则终止循环。 expr3 在每次循环之后被求值(执行)。 每个表达式都可以为空或包括逗号分隔的多个表达式。表达式 expr2 中,所有用逗号分隔的表达式都会计算,但只取最后一个结果。expr2 为空意味着将无限循环下去(和 C 一样,PHP 认为其值为 TRUE)。这可能不像想象中那样没有用,因为经常会希望用 break 语句来结束循环而不是用 for 的表达式真值判断。
看简单实例一
<div class="codetitle"><a style="CURSOR: pointer" data="45229" class="copybut" id="copybut45229" onclick="doCopy('code45229')"> 代码如下:

<div class="codebody" id="code45229">
FOR ($i = 0; $i <= 2; $i++)
{
print "value is now " . $i . "
";
}

输出值 value is now 0
value is now 1
value is now 2 在第一循环,$i=0,这意味着表达,($i<= 2),为ture。因此,打印语句执行时,$i得到加1,变成1。 在第二循环,$ = 1,这意味着表达,($i<= 2),为ture。因此,打印语句执行时,$i得到加1,变成2。 在第三迭代,$i= 2,这意味着表达,($i<= 2),为ture。因此,打印语句执行时,$i递增,成为1 3。 在第四迭代,$i= 3,这意味着表达,($i<= 2),是假的。因此,PHP不去执行循环,不执行打印语句。 实例二
<div class="codetitle"><a style="CURSOR: pointer" data="36943" class="copybut" id="copybut36943" onclick="doCopy('code36943')"> 代码如下:
<div class="codebody" id="code36943">
$brush_price = 5; echo "<table border="1" align="center">";
echo "<tr>Quantity";
echo "Price</tr>";
for ( $counter = 10; $counter <= 100; $counter += 10) {
echo "<tr><td>";
echo $counter;
echo "</td><td>";
echo $brush_price $counter;
echo "</td></tr>";
}
echo "</table>";

输出值 Quantity Price
10 50
20 100
30 150
40 200
50 250
60 300
70 350
80 400
90 450
100 500 可以参考以下的例子,它们都显示数字 1 到 10:
<div class="codetitle"><a style="CURSOR: pointer" data="14917" class="copybut" id="copybut14917" onclick="doCopy('code14917')"> 代码如下:
<div class="codebody" id="code14917">
<?PHP
/
example 1 / for ($i = 1; $i <= 10; $i++) {
echo $i;
} /
example 2 / for ($i = 1; ; $i++) {
if ($i > 10) {
break;
}
echo $i;
} /
example 3 / $i = 1;
for (;;) {
if ($i > 10) {
break;
}
echo $i;
$i++;
} /
example 4 / for ($i = 1,$j = 0; $i <= 10; $j += $i,print $i,$i++);
?>

当然,第一个例子看上去最正常(或者第四个),但用户可能会发现在 for 循环中用空的表达式在很多场合下会很方便。 PHP支持用冒号的 for 循环的替代语法。
<div class="codetitle"><a style="CURSOR: pointer" data="54438" class="copybut" id="copybut54438" onclick="doCopy('code54438')"> 代码如下:
<div class="codebody" id="code54438">
for (expr1; expr2; expr3):
statement;
...
endfor;

我们经常需要对下面这样的数组进行遍历: <div class="codetitle"><a style="CURSOR: pointer" data="35875" class="copybut" id="copybut35875" onclick="doCopy('code35875')"> 代码如下:<div class="codebody" id="code35875">
<?PHP
/

我们想要在遍历的过程中改变以下数组中某些元素的值
/
$people = Array(
Array('name' => 'Kalle','salt' => 856412),
Array('name' => 'Pierre','salt' => 215863)
); for($i = 0; $i < sizeof($people); ++$i)
{
$people[$i]['salt'] = rand(000000,999999);
}
?>

以上代码的问题,在于for的第二个表达式会导致代码执行很慢--因为每次循环时都要 计算一遍数组的长度。由于数组的长度始终不变,我们可以用一个中间变量来存储数组长度, 然后用这个变量作为for循环的第二个表达式。这样在循环的时候就可以直接使用该变量的值, 不用每次重新计算。 如下: <div class="codetitle"><a style="CURSOR: pointer" data="18121" class="copybut" id="copybut18121" onclick="doCopy('code18121')"> 代码如下:<div class="codebody" id="code18121">
<?PHP
$people = Array(
Array('name' => 'Kalle','salt' => 215863)
); for($i = 0,$size = sizeof($people); $i < $size; ++$i)
{
$people[$i]['salt'] = rand(000000,999999);
}
?>

forphp循环循环循环

猜你在找的PHP相关文章