for 迴圈是一種程式語言的疊代陳述,能夠讓程式碼重覆的執行,其擁有一個迴圈計數器,或是迴圈變數,這使得for迴圈能夠知道在疊代過程中的執行順序。
<?php
/*
for ( 初始值 ; 比對運算式 ; 初始值+步進值 ) {
statements;
}
*/
$sum=0;
$end=300;
for($i=1;$i<=$end;$i++){
if (($i == 100) or ($i == 200) or ($i == 300)){
echo $i.'<br><br>';
}else{
echo $i.', ';
}
$sum = $sum + $i;
if ($i == $end){
echo $sum;
}
}
?>
while 迴圈是一種控制流程的陳述,利用一個返回結果為 Boolean 的表達式作為迴圈條件,當這個表達式的返回值為 true 時,則重覆執行迴圈體內的程式碼;若表達式的返回值為 false ,則不再執行迴圈體 (跳出迴圈體)。
<?php
/*
while ( 條件判斷 ) {
statements;
}
*/
$i=1;
$end=300;
$sum=0;
while ( $i <= $end ) {
if (($i == 100) or ($i == 200) or ($i == 300)){
echo $i.'<br><br>';
}else{
echo $i.', ';
}
$sum = $sum + $i;
if ($i == $end){
echo $sum;
}
$i = $i +1;
}
?>
do while 迴圈與 while 迴圈 (先分析條件式) 不同的是 do while loop 無論如何都會先執行一次程式,然後再做條件式的分析判斷。
<?php
/*
do{
statements;
} while ( 條件判斷 );
*/
$i=1;
$end=300;
$sum=0;
do {
if (($i == 100) or ($i == 200) or ($i == 300)){
echo $i.'<br><br>';
}else{
echo $i.', ';
}
$sum = $sum + $i;
if ($i == $end){
echo $sum;
}
$i = $i +1;
} while ( $i <= $end );
?>
備註:
疊代法 (Iterative Method) 是從一個初始估計值出發尋找一系列近似值來解決問題的數學過程,為實現這個過程所使用的方法。
中斷指令:break 指令與 continue 指令常用於迴圈內,break 指令用來控制迴圈的跳出 (break 指令也用於 switch case ,用來跳出 case 內語法),continue 指令中止現在執行的迴圈,然後繼續跑下一個迴圈內容。另外,exit 指令會中止後續的輸出。
<table border="1" cellpadding="1">
<?php
for($i=1; $i<=9;$i++) {
echo "<tr>";
for($j=1; $j<=9; $j++) {
echo "<td>".$i." * ".$j." = ".$i*$j."</td>";
}
echo "</tr>";
}
?>
</table>
<table border="3" cellpadding="8">
<?php
$i = 1;
while($i<=9){
echo "<tr>";
$j = 1;
while($j<=9){
echo "<td>".$i." * ".$j."=".$i*$j."</td>";
$j++;
}
echo "</tr>";
$i++;
}
?>
</table>