Trong bài này, chúng ta sẽ học cách sử dụng vòng lặp trong PHP. Chúng ta sử dụng vòng lặp để chạy các đoạn code lặp lại khi thực thi 1 chức năng/nhiệm vụ nào đó. Trong PHP, chúng ta có các mệnh đề lặp như sau:
- while: lặp thông qua 1 đoạn code nếu điều kiện lặp là đúng
- do…while: thực thi đoạn code trước, nếu điều kiện lặp là đúng thì thực thi đoạn code đó lặp lại tiếp theo
- for: thực thi đoạn code theo số lần lặp được mô tả
- foreach: lặp đoạn code với mỗi phần tử trong 1 mảng nào đó
Vòng lặp while
Vòng lặp while trong PHP lặp lại đoạn code nếu điều kiện lặp là đúng.
while (điều kiện) {
//code thực hiện khi điều kiện đúng
}
Trong ví dụ sau, biến $x có giá trị ban đầu là 1. Sau đó, thực hiện vòng lặp while với điều kiện $x nhỏ hơn hoặc bằng 5, và $x sẽ tăng lên 1 đơn vị trong mỗi lần lặp.
$x = 1; while($x <= 5) { echo "Dammio.com - Số hiện tại là: $x <br>"; $x++; }
Vòng lặp do…while
Vòng lặp do…while luôn thực hiện đoạn code trước 1 lần, sau đó sẽ kiểm tra điều kiện, nếu điều kiện đúng sẽ lặp lại đoạn code.
do {
//thực thi đoạn mã
} while (điều kiện);
Trong đoạn code sau, biến $x có giá trị ban đầu là 1. Sau đó, khi thực hiện vòng lặp do while, giá trị của biến x sẽ tăng dần lên 1 đơn vị. Sau đó, điều kiện sẽ được kiểm tra ($x <= 5) và vòng lặp tiếp tục chạy theo điều kiện.
<?php $x = 1; do { echo "Dammio.com - Số hiện tại là: $x <br>"; $x++; } while ($x <= 5); ?>
Ví dụ tiếp theo nếu thiết lập giá trị ban đầu của biến $x là 6, thì khi chạy vòng do while, đoạn code vẫn chạy 1 lần trước khi kiểm tra điều kiện ($x <= 5).
<?php $x = 6; do { echo "Dammio.com - Số hiện tại là: $x <br>"; $x++; } while ($x <= 5); ?>
Vòng lặp for
Vòng lặp for được dùng để thực hiện việc lặp lại đoạn code nào đó theo số lần cụ thể cho trước.
for (init counter; test counter; increment counter) {
//mã thực thi
}
Các tham số:
- init counter: giá trị đếm khởi tạo của vòng lặp
- test counter: Điều kiện lặp, nếu điều kiện đúng thì tiếp tục lặp, điều kiện sai thì thoát khỏi vòng lặp.
- increment counter: xác định đơn vị tăng của giá trị đếm
Ví dụ sau đây hiển thị các số từ 0 đến 10:
<?php for ($x = 0; $x <= 10; $x++) { echo "Dammio.com - Số hiện tại là: $x <br>"; } ?>
Vòng lặp foreach
Vòng lặp foreach chỉ hoạt động với mảng dữ liệu, được dùng để lặp qua từng phần tử trong mảng.
foreach ($array as $value) {
//đoạn mã thực thi
}
Với mỗi vòng lặp, giá trị của phần tử mảng hiện tại được gán cho biến $value và con trỏ mảng sẽ di chuyến đến vị trí tiếp theo cho đến khi đến vị trí cuối cùng trong mảng.
Ví dụ sau mô tả 1 vòng lặp in ra các giá trị phần tử của 1 mảng.
<?php $colors = array("đỏ - dammio.com", "xanh", "tím", "vàng"); foreach ($colors as $value) { echo "$value <br>"; } ?>
Như vậy, bài viết đã hướng dẫn bạn các vòng lặp trong PHP, tương tự như các ngôn ngữ lập trình khác.