PHP - Vòng lặp (Học PHP)
Lệnh for được dùng trong trường hợp bạn biết trước bao nhiêu lần bạn muốn thực thi một lệnh hoặc một loạt lệnh trong PHP.
for (khởi_tạo; điều_kiện; tăng_giảm_giá_trị) { phần code để thực thi }
khởi_tạo được sử dụng trong trường hợp thiết lập giá trị bắt đầu cho biến đếm số lần lặp. Một biến có thể được khai báo ở đây cho mục đích này và thường được đặt tên truyền thống là $i.
Ví dụVí dụ dưới đây tạo 5 lần lặp và thay đổi giá trị đã gán của 2 biến qua từng lần lặp.
< html> < body> < ?php $a = 0; $b = 0; for ($i=0; $i< 5; $i++) { $a += 10; $b += 5; } echo ("Sau vòng lặp, giá trị a=$a và b=$b"); ? > < /body> < /html>
Lưu chương trình trên trong một file có tên là test. php trong htdocs, sau đó mở trình duyệt ra và gõ địa chỉ http: //localhost: 8080/test. php sẽ cho ra kết quả:
Lệnh while trong PHP sẽ được thực thi một khối code nếu và miễn là có một điều kiện đã được xác định là true.
Nếu điều kiện đã cho xác định là true, thì khối code đó sẽ được thực thi. Sau khi code đã được thực thi, thì biểu thức điều kiện sẽ được ước lượng một lần nữa, và vòng lặp lại tiếp tục thực thi cho đến khi khi biểu thức điều kiện là false.
while (điều_kiện) { phần code được thực thi nếu điều kiện là true }Ví dụ
Ví dụ dưới đây giảm giá trị một biến qua từng lần lặp và tăng giá trị biến đếm cho đến khi nó đạt đến 10, thì sự ước lượng là false và vòng lặp sẽ kết thúc.
< html> < body> < ?php $i = 0; $num = 30; while ($i < 10) { $num--; $i++; } echo ("Vòng lặp dừng tại giá trị i = $i và num = $num"); ? > < /body> < /html>
Lưu chương trình trên trong một file có tên là test. php trong htdocs, sau đó mở trình duyệt và gõ vào đó địa chỉ http: //localhost: 8080/test. php sẽ cho kết quả dưới đây:
Lệnh do…while sẽ thực thi một khối code với ít nhất 1 lần. Sau đó nó sẽ lặp lại vòng lặp miễn là điều kiện được xác định là true.
Cú phápdo { phần code để thực thi } while (điều_kiện);Ví dụ
Ví dụ dưới đây sẽ lượng gia giá trị của i ít nhất 1 lần, và sau đó nó sẽ tiếp tục tăng thêm biến i miễn là nó có giá trị bé hơn 10.
< html> < body> < ?php $i = 0; do { $i++; } while ($i < 10); echo ("Vòng lặp dừng tại giá trị i = $i"); ? > < /body> < /html>
Lưu chương trình trên trong một file có tên là test. php trong htdocs, sau đó mở trình duyệt và gõ vào đó địa chỉ http: //localhost: 8080/test. php sẽ cho kết quả sau đây:
Lệnh vòng lặp foreach được dùng để lặp qua một mảng. Ở mỗi lần lặp, giá trị cho phần tử mảng hiện tại được gán cho $value và con trỏ mảng sẽ di chuyển đến phần tử kế tiếp và trong lần lặp kế tiếp thì phần tử kế tiếp sẽ được xử lý.
Cú phápforeach (Mảng as giá_trị) { phần code để thực thi }Ví dụ
Bạn thử ví dụ dưới đây để liệt kê các giá trị của một mảng.
< html> < body> < ?php $array = array (1,2,3,4,5); foreach ($array as $value) { echo "Giá trị phần tử mảng là $value < br /> "; } ? > < /body> < /html>
Lưu chương trình trên trong một file có tên là test. php trong htdocs, sau đó mở trình duyệt và gõ vào địa chỉ http: //localhost: 8080/test. php sẽ cho kết quả sau:
Từ khóa break trong PHP được dung để kết thúc một cách đột ngột sự thực thi của một vòng lặp.
Lệnh break được đặt ở bên trong khối lệnh. Nó trao cho bạn toàn quyền điều khiển bất cứ khi nào bạn muốn rời khỏi vòng lặp. Sau khi thoát ra khỏi vòng lặp, lệnh ngay sau vòng lặp đó sẽ được thực thi.
Ví dụ dưới đây kiểm tra điều kiện true khi giá trị biến đếm = 3 và vòng lặp kết thúc.
< html> < body> < ?php $i = 0; while ($i < 10) { $i++; if ($i == 3)break; } echo ("Vòng lặp dừng tại giá trị i = $i"); ? > < /body> < /html>
Lưu chương trình trên trong một file có tên là test. php trong htdocs, sau đó mở trình duyệt ra và gõ địa chỉ http: //localhost: 8080/test. php sẽ cho kết quả sau:
Từ khóa continue trong PHP được dùng để hỗ trợ dừng vòng lặp hiện tại nhưng không kết thúc vòng lặp đó.
Giống lệnh break, lệnh continue được đặt bên trong khối lệnh có chứa code mà vòng lặp đó thực thi, được đặt trước bởi một biểu thức kiểm tra điều kiện. Khi có lệnh continue, phần còn lại của vòng lặp bị bỏ qua và tiếp tục thực thi vòng lặp tiếp theo.
Vòng lặp sau in ra giá trị của một mảng, nếu thỏa mãn với điều kiện thì được in ra, nnếu không thỏa mãn thì bỏ qua và tiếp tục vòng lặp.
< html> < body> < ?php $array = array (1,2,3,4,5); foreach ($array as $value) { if ($value == 3)continue; echo "Gia tri cua phan tu mang la $value < br /> "; } ? > < /body> < /html>