ホームページ  >  記事  >  バックエンド開発  >  PHP for ループステートメントの構文の紹介と使用例

PHP for ループステートメントの構文の紹介と使用例

伊谢尔伦
伊谢尔伦オリジナル
2017-06-23 09:53:512511ブラウズ

forループは、ループを追加したコードです。関連するループの一般的なタスクは次のとおりです:

1. いくつかのカウンター 変数 の初期値を設定します。
2. 条件文が正しいことを確認してください。
3. 実行中のコードループ。
4. 各反復の終了時にループカウンターをインクリメントします。
for ループを使用すると、簡単なコード行でこれらのステップを定義できます。変な形をしているようなので、文法には十分注意してくださいね!
for ループの構文は次のとおりです:

for (expr1; expr2; expr3) 
statement

最初の expression (expr1) は、ループが開始される前に無条件に 1 回評価されます。
expr2 は各ループの前に評価されます。値が TRUE の場合、ループが続行され、ネストされたループ ステートメントが実行されます。値が FALSE の場合、ループは終了します。
expr3 は各ループの後に評価 (実行) されます。
各式は空にすることも、カンマで区切られた複数の式を含めることもできます。式 expr2 では、カンマで区切られたすべての式が評価されますが、最後の結果のみが取得されます。空の expr2 は、ループが無限に継続することを意味します (C と同様、PHP はその値を TRUE と見なします)。これは、思っているほど役に立たないかもしれません。ループを終了するには、for 式の真偽チェックを使用する代わりに、break ステートメントを使用することがよくあります。
例 1

for ($i = 0; $i <= 2; $i++) 
{ 
print "value is now " . $i . "<br>"; 
}

出力値

value is now 0 
value is now 1 
value is now 2

最初のループでは、$i=0 です。これは、式 ($i<= 2) が true であることを意味します。したがって、print ステートメントが実行されると、$i は 1 増加して 1 になります。

2 番目のループでは、$ = 1、つまり式 ($i
3 回目の反復では、$i= 2 です。これは、式 ($i
4 番目の反復では、$i= 3 です。これは、式 ($i
例 2

$brush_price = 5; 
echo "<table border="1" align="center">"; 
echo "<tr><th>Quantity</th>"; 
echo "<th>Price</th></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 までの数字が表示されます。

<?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++); 
?>

もちろん、最初の例 (または 4 番目) は最も普通に見えますが、 user can for ループで空の式を使用すると、多くの状況で便利であることがわかります。

PHP は、コロンを使用した for ループの代替構文もサポートしています。

for (expr1; expr2; expr3): 
statement; 
... 
endfor;

次の array を走査する必要がよくあります:

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

上記のコードの問題は、for の 2 番目の式によってコードの実行が非常に遅くなるということです。これは、ループされるたびに計算する必要があるためです。配列の長さ。配列の長さは常に同じなので、中間変数を使用して配列の長さを保存し、この変数を for ループの 2 番目の式として使用できます。このようにして、毎回再計算することなく、変数の値をループ中に直接使用できます。 以下の通り:

<?php 
$people = Array( 
Array(&#39;name&#39; => &#39;Kalle&#39;, &#39;salt&#39; => 856412), 
Array(&#39;name&#39; => &#39;Pierre&#39;, &#39;salt&#39; => 215863) 
); 
for($i = 0, $size = sizeof($people); $i < $size; ++$i) 
{ 
$people[$i][&#39;salt&#39;] = rand(000000, 999999); 
} 
?>


以上がPHP for ループステートメントの構文の紹介と使用例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。