PHP官方文件之————secure.php.net.while

tinywan1227發表於2017-03-05

 

  while 語句的含意很簡單,它告訴 PHP 只要 while 表示式的值為 TRUE 就重複執行巢狀中的迴圈語句。表示式的值在每次開始迴圈時檢查,所以即使這個值在迴圈語句中改變了,語句也不會停止執行,直到本次迴圈結束。有時候如果 while 表示式的值一開始就是 FALSE,則迴圈語句一次都不會執行。

Example #1

<?php
$i = 0;
while ($i <=10){
    echo $i."
";
    $i++;
}

Example #2

<?php
$a = 0;
while ($a < 10) :
    echo $a."
";
    $a++;
endwhile;

 Example #3

<?php
while (true) {
  if (`test`) { // is initial condition true
    // do something that also changes initial condition
  } else { // condition failed
    break; // leave loop
  }
}

 

  do-while 迴圈和 while 迴圈非常相似,區別在於表示式的值是在每次迴圈結束時檢查而不是開始時。和一般的 while 迴圈主要的區別是 do-while 的迴圈語句保證會執行一次(表示式的真值在每次迴圈結束後檢查),然而在一般的 while 迴圈中就不一定了(表示式真值在迴圈開始時檢查,如果一開始就為 FALSE 則整個迴圈立即終止)。

 Example #1

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

 

foreach 語法結構提供了遍歷陣列的簡單方式。foreach 僅能夠應用於陣列和物件,如果嘗試應用於其他資料型別的變數,或者未初始化的變數將發出錯誤資訊。

可以很容易地通過在 $value 之前加上 & 來修改陣列的元素。此方法將以引用賦值而不是拷貝一個值。

<?php
$arr = [1,2,3,4];
var_dump($arr); //$arr is now array(1, 2, 3, 4)
foreach($arr as &$val){
    $val = $val*2;
}
var_dump($arr); //$arr is now array(2, 4, 6, 8)
unset($val); // 最後取消掉引用

Warning:陣列最後一個元素的 $value 引用在 foreach 迴圈之後仍會保留。建議使用 unset() 來將其銷燬。

 

$arrB = [`TWO`,"ONE","THREE"];
reset($arrB);
while(list($key,$val)=each($arrB)){
    echo $key.`====>`.$val."
";
}

 


相關文章