Các vòng lặp trong PHP được sử dụng để thực thi cùng một khối mã với một số lần xác định. PHP hỗ trợ bốn kiểu vòng lặp sau.
for - lặp qua một khối mã một số lần xác định.
while - lặp qua một khối mã nếu và miễn là một điều kiện được chỉ định là đúng.
do ... while - lặp qua một khối mã một lần và sau đó lặp lại vòng lặp miễn là điều kiện đặc biệt là đúng.
foreach - lặp qua một khối mã cho mỗi phần tử trong một mảng.
Chúng ta sẽ thảo luận về các từ khóa continue và break được sử dụng để kiểm soát việc thực thi các vòng lặp.
Câu lệnh for được sử dụng khi bạn biết số lần bạn muốn thực hiện một câu lệnh hoặc một khối câu lệnh.
for (initialization; condition; increment){ code to be executed; }
Bộ khởi tạo được sử dụng để đặt giá trị bắt đầu cho bộ đếm số lần lặp của vòng lặp. Một biến có thể được khai báo ở đây cho mục đích này và theo truyền thống, nó được đặt tên là $ i.
Ví dụ sau tạo năm lần lặp và thay đổi giá trị được gán của hai biến trên mỗi lần vượt qua của vòng lặp:
<html> <body> <?php $a = 0; $b = 0; for( $i = 0; $i<5; $i++ ) { $a += 10; $b += 5; } echo ("At the end of the loop a = $a and b = $b" ); ?> </body> </html>
Điều này sẽ tạo ra kết quả sau:
At the end of the loop a = 50 and b = 25
Câu lệnh while sẽ thực thi một khối mã nếu và miễn là biểu thức kiểm tra là đúng.
Nếu biểu thức kiểm tra là đúng thì khối mã sẽ được thực thi. Sau khi mã được thực thi, biểu thức kiểm tra sẽ được đánh giá một lần nữa và vòng lặp sẽ tiếp tục cho đến khi biểu thức kiểm tra được phát hiện là sai.
while (condition) { code to be executed; }
Ví dụ này giảm một giá trị biến trên mỗi lần lặp của vòng lặp và bộ đếm tăng lên cho đến khi nó đạt đến 10 khi đánh giá là sai và vòng lặp kết thúc.
<html> <body> <?php $i = 0; $num = 50; while( $i < 10) { $num--; $i++; } echo ("Loop stopped at i = $i and num = $num" ); ?> </body> </html>
Điều này sẽ tạo ra kết quả sau:
Loop stopped at i = 10 and num = 40
Câu lệnh do ... while sẽ thực thi một khối mã ít nhất một lần - sau đó nó sẽ lặp lại vòng lặp miễn là một điều kiện là đúng.
do { code to be executed; } while (condition);
Ví dụ sau sẽ tăng giá trị của i ít nhất một lần và nó sẽ tiếp tục tăng giá trị của biến i miễn là nó có giá trị nhỏ hơn 10 -
<html> <body> <?php $i = 0; $num = 0; do { $i++; } while( $i < 10 ); echo ("Loop stopped at i = $i" ); ?> </body> </html>
Điều này sẽ tạo ra kết quả sau:
Loop stopped at i = 10
Câu lệnh foreach được sử dụng để lặp qua các mảng. Đối với mỗi lần truyền, giá trị của phần tử mảng hiện tại được gán cho giá trị $ và con trỏ mảng được di chuyển bởi một và trong lần truyền tiếp theo, phần tử tiếp theo sẽ được xử lý.
foreach (array as value) { code to be executed; }
Hãy thử ví dụ sau để 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 "Value is $value <br />"; } ?> </body> </html>
Điều này sẽ tạo ra kết quả sau:
Value is 1 Value is 2 Value is 3 Value is 4 Value is 5
Từ khóa break trong PHP được sử dụng để kết thúc quá trình thực thi một vòng lặp sớm.
Câu lệnh break nằm bên trong khối câu lệnh. Nó cung cấp cho bạn toàn quyền kiểm soát và bất cứ khi nào bạn muốn thoát khỏi vòng lặp, bạn có thể ra ngoài. Sau khi thoát ra khỏi một vòng lặp, ngay lập tức câu lệnh của vòng lặp sẽ được thực thi.
Trong ví dụ sau, kiểm tra điều kiện trở thành true khi giá trị bộ đếm đạt đến 3 và vòng lặp kết thúc.
<html> <body> <?php $i = 0; while( $i < 10) { $i++; if( $i == 3 )break; } echo ("Loop stopped at i = $i" ); ?> </body> </html>
Điều này sẽ tạo ra kết quả sau:
Loop stopped at i = 3
Từ khóa continue trong PHP được sử dụng để tạm dừng việc lặp lại hiện tại của một vòng lặp nhưng nó không kết thúc vòng lặp.
Cũng giống như câu lệnh break , câu lệnh continue nằm bên trong khối câu lệnh chứa mã mà vòng lặp thực thi, trước một kiểm tra có điều kiện. Đối với câu lệnh tiếp tục gặp phải lần vượt qua , phần còn lại của mã vòng lặp được bỏ qua và lần vượt qua tiếp theo sẽ bắt đầu.
Trong ví dụ sau, vòng lặp in ra giá trị của mảng nhưng điều kiện nào trở thành true thì nó chỉ cần bỏ qua mã và giá trị tiếp theo được in.
<html> <body> <?php $array = array( 1, 2, 3, 4, 5); foreach( $array as $value ) { if( $value == 3 )continue; echo "Value is $value <br />"; } ?> </body> </html>
Điều này sẽ tạo ra kết quả sau:
Value is 1 Value is 2 Value is 4 Value is 5
Đăng nhận xét