首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP do-while 迴圈:先執行後判斷的保證至少一次執行結構

     編輯:PHP 綜合知識

do-while 迴圈獨特之處在於「先執行後判斷」,保證迴圈體至少執行一次,適用於菜單選單、輸入驗證等場景。

語法結構

do {
    迴圈體語句;
} while (條件表達式); // 注意結尾分號

執行流程對比

迴圈類型首次判斷最少執行次數適用場景
while先判斷0 次條件可能初始為假
do-while後判斷1 次必須先執行一次再決定
for先判斷0 次計數器驅動

實戰範例:輸出 20 行問候語

<?php
$i = 0;
do {
    echo '<br />Hello, www.example.com!';
    $i++;
} while ($i < 20);
?>

經典應用:使用者輸入驗證

<?php
do {
    echo "請輸入密碼 (8-16位): ";
    $password = trim(fgets(STDIN));
    $len = strlen($password);
    if ($len < 8 || $len > 16) {
        echo "長度不符合要求,請重新輸入\n";
    }
} while ($len < 8 || $len > 16);
echo "密碼設定成功!";
?>

菜單系統範例

<?php
do {
    echo "\n=== 主選單 ===\n";
    echo "1. 查詢資料\n2. 新增資料\n3. 修改資料\n4. 刪除資料\n0. 離開\n";
    echo "請選擇: ";
    $choice = trim(fgets(STDIN));
    
    switch ($choice) {
        case '1': queryData(); break;
        case '2': addData(); break;
        case '3': editData(); break;
        case '4': deleteData(); break;
        case '0': echo "再見!"; break;
        default: echo "無效選項!";
    }
} while ($choice !== '0');
?>

break/continue 行為

  • break:跳出整個 do-while 迴圈
  • continue:跳至 while (條件) 判斷,條件為真則繼續下一輪

注意事項

  1. 條件表達式後必須加分號,易漏寫導致語法錯誤
  2. 確保迴圈體內有邏輯最終能滿足退出條件
  3. 較少用於一般迭代,濫用會降低代碼可讀性

do-while 是「至少一次」語義的精確表達,用對場景能簡化邏輯,濫用則增加認知負擔。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved