Khái niệm về cấu trúc lặp
Cấu trúc lặp (vòng lặp): Là những khối lệnh được thực hiện lặp đi lặp lại nhiều lần chừng nào điều kiện còn thỏa mãn. Các vòng lặp sẽ kết thúc khi điều kiện không còn thỏa mãn. Vòng lặp được sử dụng khi ta muốn thực hiện những tính toán, hay những tác vụ lặp lại nhiều lần.
Thông thường, khi sử dụng vòng lặp, ta sẽ khai báo các biến đếm để kiểm soát số lần lặp. Biến đếm là những biến được khai báo ở bên trong vòng lặp, và giá trị của nó sẽ thay đổi sau mỗi lần lặp, để có thể kết thúc vòng lặp. Biến đếm chỉ tồn tại khi vòng lặp đang hoạt động. Khi vòng lặp kết thúc thì biến đếm cũng bị hủy.
Bài viết này chúng ta sẽ tìm hiểu về các cấu trúc lặp trong lập trình PHP.
PHP hỗ trợ 4 loại vòng lặp sau
a) Vòng lặp for
Được sử dụng khi ta đã biết được số lần lặp. Vòng lặp for sẽ được thực hiện chừng nào điều kiện còn thỏa mãn.
Cú pháp của vòng lặp for:
for (initialization; condition; increment){
code to be execueted;
}
Vòng lặp for bao gồm 3 câu lệnh như sau:
- Lệnh khởi tạo: Được dùng để khai báo và khởi tạo biến đếm. Lệnh này được thực hiện một lần duy nhất trước khi vòng lặp được thực thi. Vòng lặp for có thể có một hoặc nhiều biến đếm.
- Lệnh điều kiện: Dùng để thể hiện điều kiện của vòng lặp. Lệnh này sẽ được kiểm tra trước mỗi lần lặp.
- Lệnh tăng/giảm: Dùng để tăng hoặc giảm giá trị của biến đếm. Lệnh này sẽ được thực hiện sau mỗi lần lặp.
Chú ý: Ba lệnh này là tùy chọn, vòng lặp for có thể khuyết cả 3 câu lệnh này
Ví dụ:
Kết quả:
Ở đây ta đã dùng vòng lặp for để duyệt qua 10 số nguyên đầu tiên, và đây là kết quả của bài ví dụ trên
b) Vòng lặp while
Được sử dụng khi ta không biết trước số lần lặp. Vòng lặp while sẽ được thực hiện chừng nào điều kiện còn thỏa mãn.
Chú ý: Vòng lặp while sẽ kiểm tra điều kiện trước, sau đó mới thực hiện vòng lặp. Vì vậy, nếu điều kiện sai ngay từ đầu, vòng lặp while sẽ không thực hiện được lần nào.
Cú pháp của vòng lặp while:
for (condition){
code to be executed;
}
Ở đây, ta sử dụng vòng lặp while để duyệt và in ra 10 số nguyên đầu tiên. Kết quả của chương trình như sau:
Tuy nhiên, nếu giả sử giá trị của biến $i = 11, khiến điều kiện của vòng lặp bị sai ngay từ đầu, vòng lặp while có thể không được thực hiện lần nào, và biến i sẽ không được in ra trang web.
Khi đó, kết quả sẽ như sau:
c) Vòng lặp do while
Cũng được sử dụng khi ta chưa biết trước số lần lặp.
Về cơ bản, vòng lặp do while cũng giống như vòng lặp while. Khác biệt ở chỗ:
- Vòng lặp while kiểm tra điều kiện trước rồi mới thực hiện thân của vòng lặp, nên nếu điều kiện sai ngay từ ban đầu, vòng lặp while có thể không được thực hiện lần nào.
- Còn Vòng lặp do while thì thực hiện thân của vòng lặp trước rồi mới kiểm tra điều kiện. Do đó nếu điều kiện bị sai ngay từ ban đầu, vòng lặp do while vẫn được thực thi ít nhất một lần.
Cú pháp:
do () {
code to be executed;
}
while (condition);
Ví dụ:
Ở đây, ta dùng vòng lặp do while để duyệt qua 10 số nguyên đầu tiên. Ta thấy kết quả như hình bên dưới:
Tuy nhiên, nếu điều kiện của vòng lặp bị sai ngay từ đầu, ta thấy vòng lặp vẫn sẽ được thực hiện ít nhất một lần, như sau:
Ở đây biến $i = 11 do đó điều kiện của vòng lặp không thỏa mãn, nhưng vòng lặp vẫn được thực hiện một lần, và in ra i = 11
Kết quả:
d) Vòng lặp foreach
Vòng lặp foreach được dùng để duyệt qua các mảng. Vòng lặp này ngắn gọn hơn so với vòng lặp for, trong đó ta chỉ cần khai báo một tên biến, rồi sử dụng tên biến đó để duyệt qua mảng.
Ví dụ:
Ở đây ta dùng vòng lặp foreach để duyệt qua một mảng các tên món ăn, rồi in ra tên của từng món ăn đó.
Kết quả:
Như vậy, chúng ta đã tìm hiểu về 4 kiểu vòng lặp trong lập trình PHP, nếu bạn có bất kỳ thắc mắc nào, hãy cho chúng tôi biết trong phần bình luận, đừng quên comment, like, share nếu cảm thấy có ích nhé.
Nguyễn Hùng Cường