Skip to main content

Session 8 - Flow Control in PHP

I. Giới thiệu

Loop (vòng lập) là gì?

  • Là các công việc lặp đi lặp lại như:
    • Truy xuất thông tin được lưu trữ trong cơ sở dữ liệu
    • Gửi email cho nhiều người
    • Đọc nội dung của một mảng

Các vòng lập có trong PHP

  • while
  • do-while
  • for (& foreach)

II. Working with Loops

Làm việc với vòng lập là:

  • Thực thi lập đi lập lại một khối lệnh
  • Kiểm tra điều kiện được chỉ đinh để lập:
    • Nếu điều kiện đúng, khối lệnh bên trong vòng lập sẽ được thực thi
    • Nếu điều kiện sai, vòng lập kết thúc, chuyển sang thực thi các câu lệnh sau vòng lập
  • Lệnh continue nằm bên trong khối lệnh thực thi của vòng lập, để chuyển sang vòng lập tiếp theo tại thời điểm nó được gọi.

III. Vòng lập while

Vòng lập while là gì?

  • Là vòng lập mà điều kiện được chỉ định sẽ được kiểm tra trước khi chạy
    • Nếu điều kiện đúng, thực thi khối lệnh bên trong while
    • Nếu điều kiện sai, vòng lập kết thúc, chuyển sang thực thi các câu lệnh sau vòng lập

Ví dụ:

Hiển thị 5 số chia hết cho 5

<?php
$counter = 1;
$number = 5;
while ($counter <= 5)
{
$result = $number * $counter;
echo "<h1>$result</h1>";
$counter = $counter + 1;
}
?>

IV. Vòng lập do-while

Vòng lập do-while là gì?

  • Là vòng lập mà điều kiện sẽ được kiểm tra sau khi chạy
  • Khối lệnh trong do-while được thực thi ít nhất 1 lần
  • Hoạt động tương tự như vòng lập while

Ví dụ:

$number=1;
echo "The odd numbers between 1 and 10 are:";
do {
echo "<h1>$number</h1>";
$number = $number + 2;
}
while ($number <= 10);
echo "<br>The loop ends because the condition is satisfied.";

V. Vòng lập for

Vòng lập for là gì?

  • Là vòng lập thực thi khối lệnh với số lần lập được cố định
  • Các câu lệnh trong thân vòng lặp được thực hiện miễn là điều kiện được thỏa mãn
  • Chỉ dừng lại khi điều kiện không thỏa mãn

Vòng lập for có 3 biểu thức:

  • Biểu thức khởi tạo giá trị, thường là đếm counter
  • Điều kiện lập
  • Tái khởi tạo giá trị cho lần lập tiếp theo
$maxNumber = 100;

for ($i = 0; $i <= $number; $i++) {
// code
}

VI. Lệnh break

Lệnh break là gì?

  • Là lệnh sẽ kết thúc vòng lập tại thời điểm nó được gọi
  • Có thể sử dụng trong lệnh if, switch, for, while, do-while
for ($i = 1; ; $i++) {
if ($i > 5)
{
break;
}
echo "<h1>$i</h1>";
}

VII. Lệnh continue

Lệnh continue là gì?

  • Là lệnh được dùng trong khối lệnh của các vòng lập
  • Bỏ qua lần lập hiện tại, chuyển đến lần lập tiếp theo
  • Có thể sử dụng với lệnh if, for, while, do-while

Ví dụ, tìm số chẳn từ 0 - 100:

for ($i = 1; $i <= 100; $i++) {
if ($i % 2 > 0) {
continue;
}

echo "$i là số chẵn";
}

VIII. Lệnh exit

Lệnh exit là gì?

  • Là lệnh ngừng thực thi chương trình