Vòng lặp do-while trong PHP

Vòng lặp do-while trong PHP
Vòng lặp do-while trong PHP

Chức năng của Vòng lặp do-while trong PHP

Vòng lặp do-while trong PHP dùng để chạy đoạn code có điều kiện và có lặp đi lặp lại nếu thỏa điều kiện, nó thực hiện hành động trước rồi mới tới điều kiện sau, nếu không thỏa điều kiện thì nó vẫn thực hiện hành động.

Cú pháp của Vòng lặp do-while trong PHP

giá_trị_khởi_đầu_cho_biến;
do{
// Đoạn_code_thực_thi_trước_rồi_xét_điều_kiện
tăng_giảm_biến_sau_mỗi_lần_lặp;
}
while(điều_kiện_tiếp_tục_vòng_lặp);

giá_trị_khởi_đầu_cho_biến: Đặt giá trị khởi đầu cho biến (Ví dụ: $i=0, $i=3,...) Biến $i thay bằng biến khác được.

điều_kiện_tiếp_tục_vòng_lặp: Đặt điều kiện tiếp tục vòng lặp (Ví dụ: $i

tăng_giảm_biến_sau_mỗi_lần_lặp: Quy định mỗi lần lặp thì biến $i sẽ tăng hay giảm bao nhiêu.

Đoạn_code_thực_thi_trước_rồi_xét_điều_kiện: Đoạn code sẽ thực thi trước rồi mới xét đến điều kiện.

Ví dụ Vòng lặp do-while trong PHP

Ở ví dụ này, $i= 3 là điểm bắt đầu, $i++ là tăng lên 1 số sau mỗi lần lặp, $i

<?php
$i= 3;
do{
echo $i."<br>";
$i++;
}while($i<9);
?>

Trường hợp dưới này mặt dù điều kiện $i

<?php
$i= 3;
do{
echo $i."<br>";
$i++;
}while($i<2);
?>

Chạy Thử

Kinh nghiệm sử dụng vòng lặp do while trong PHP hiệu quả

Để sử dụng do while hiệu quả, điều quan trọng không chỉ là biết cú pháp mà còn phải xác định đúng tình huống áp dụng. Cấu trúc này phù hợp với những trường hợp cần thực hiện một tác vụ trước, sau đó mới kiểm tra điều kiện để quyết định có tiếp tục hay không.

Khi nào nên sử dụng do while thay vì while?

Điểm khác biệt đáng chú ý là do while luôn thực hiện khối lệnh ít nhất một lần, ngay cả khi điều kiện ban đầu không thỏa mãn. Vì vậy, cấu trúc này phù hợp khi tác vụ cần được thực hiện trước rồi mới kiểm tra kết quả.

Ví dụ, chương trình cần hiển thị một lựa chọn cho người dùng, xử lý dữ liệu nhập vào hoặc thực hiện một thao tác rồi mới xác định có tiếp tục hay không. Trong những trường hợp này, do while thường trực quan hơn while.

Ngược lại, nếu cần kiểm tra điều kiện trước khi thực hiện bất kỳ câu lệnh nào, while sẽ phù hợp hơn.

Cách tránh vòng lặp do while chạy vô hạn

Vòng lặp có thể chạy liên tục nếu điều kiện luôn nhận giá trị đúng. Lỗi này thường xảy ra khi biến được sử dụng để kiểm tra điều kiện không được cập nhật sau mỗi lần lặp.

Khi xây dựng do while, nên kiểm tra ba yếu tố: giá trị khởi tạo, phần thay đổi dữ liệu trong vòng lặp và điều kiện kết thúc. Mỗi lần lặp cần tạo ra sự thay đổi có khả năng đưa chương trình đến trạng thái dừng.

<?php
$count = 1;

do {
    echo $count;
    $count++;
} while ($count <= 5);
?>

Trong ví dụ trên, biến $count tăng sau mỗi lần thực hiện nên điều kiện sẽ chuyển sang sai và vòng lặp kết thúc. Khi xử lý dữ liệu thực tế, cần đặc biệt chú ý các trường hợp giá trị không thay đổi hoặc luôn thỏa mãn điều kiện.

Kết hợp do while với điều kiện và dữ liệu thực tế

do while có thể kết hợp với các điều kiện khác để xử lý những quy trình cần lặp lại cho đến khi đạt được kết quả mong muốn. Chẳng hạn, chương trình có thể yêu cầu người dùng nhập dữ liệu, kiểm tra dữ liệu và yêu cầu nhập lại nếu giá trị chưa hợp lệ.

<?php
$value = 0;

do {
    $value = random_int(1, 10);
} while ($value < 5);

echo $value;
?>

Cách triển khai này giúp tách rõ hai bước: thực hiện thao táckiểm tra kết quả. Khi viết mã thực tế, nên đặt điều kiện kết thúc rõ ràng và tránh đưa quá nhiều xử lý vào cùng một vòng lặp để mã PHP dễ đọc, kiểm tra và bảo trì hơn.

Lời kết

Cảm ơn các bạn đã tham khảo bài viết Vòng lặp do-while trong PHP.

  • 0 Bình luận
Trần Thị Vân | Content Creator Web Mới
Trần Thị Vân
Trần Thị Vân là Content Creator tại Web Mới, phụ trách nghiên cứu, biên soạn nội dung và chia sẻ kiến thức về website, SEO, lập trình cùng các xu hướng công nghệ
Đánh giá
Chia sẻ nội dung đánh giá của bạn về Vòng lặp do-while trong PHP
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *
Đánh giá của bạn
Tên *
Email
Số điện thoại *
Bình luận, Hỏi đáp
Yêu Cầu Báo Giá
Gửi trang web mẫu cần làm theo, chúng tôi sẽ báo giá đến bạn từ Email (tanlucit09@gmail.com - Bùi Tấn Lực) hoặc Zalo (Lực IT - 0398259259) !