Vòng lặp while: là câu lệnh lặp đơn giản nhất Cú pháp tương tự như câu lệnh if:

Một phần của tài liệu tài liệu Learning PHP & MySQL (Trang 28 - 30)

PHP Code:

while (condition) { //các câu lệnh }

Một vòng lặp while sẽ kiểm tra một biểu thức Boolean. Nếu biểu thức là false thì đoạn mã bên trong dấu ngoặc móc sẽ được bỏ qua. Ngược lại, nếu có giá trị true thì đoạn mã bên trong dấu ngoặc móc sẽ được thực hiện. Khi gặp dấu } thí điều kiện kiểm tra sẽ được thực hiện lại và nếu có giá trị là true thì đoạn mã trong vòng lặp sẽ được thực hiện lại. Điều này sẽ tiếp tục cho đến khi gặp phải điều kiện . Chú ý rằng điều kiện chỉ được kiểm tra mỗi khi bắt đầu vòng lặp, bởi vậy ngay khi sự chính xác của điều kiện thay đổi trong suốt đoạn giữa của khối lệnh ,thì mã lệnh sẽ vẫn được thực thi cho đến hết. Để thoát khỏi vào thời điểm sớm hơn,ta có thể sử dụng lệnh break. Ví dụ:

PHP Code: $i = 11;

if (my_function($i) == "error") { break; // dừng vòng lặp! }

++$num_bikes; }

Trong ví dụ này, nếu ta hình dung rằng hàm my_function không trả về bất kì lỗi nào thì vòng lặp sẽ lặp đi lặp lại 10 lần và dừng lại khi biến $i =0. Còn nếu my_function trả về lỗi, thì câu lệnh break sẽ được thực hiện và vòng lặp sẽ dừng lại. Có nhiều trường hợp mà chúng ta mong muốn kết thúc chỉ khi sự lặp lại hiện thời của vòng lặp không phải là toàn bộ vòng lặp của chính nó. Để đạt được điều này, ta sử dụng lệnh continue.Ví dụ:

PHP Code: $i = 11; while (--$i) { if (my_function($i) == "error") { continue; } ++$num_bikes; }

Đoạn mã này cũng lặp đi lặp lại 10 lần nếu không có lỗi nào được trả về bởi hàm my_function. Tuy nhiên tại lúc này, nếu có lỗi xảy ra, việc thực hiện sẽ lướt qua sự lặp lại kế tiếp của vòng lặp, mà không tăng biến đếm $num_bikes.Giả sử biến $i vẫn lớn hơn 0, vòng lặp sẽ tiếp tục như bình thường.

2. Vòng lặp do...while: vòng lặp này cũng giống như while, ngoại trừđiều kiện được kiểm tra tại cuối mỗi vòng lặp, thay vì là ởđầu. Điều này có nghĩa là vòng lặp sẽ luôn

Một phần của tài liệu tài liệu Learning PHP & MySQL (Trang 28 - 30)