Câu lệnh foreach trong php | Laptrinhcanban.com

Câu lệnh foreach trong php

Hướng dẫn cách sử dụng câu lệnh foreach trong php.
Hãy tưởng tượng bạn là một ông chú của một đám nhóc con gồm 3 đứa. Bạn đi chơi xa và cần phải mua quà cho chúng, nhưng lại đãng trí tới mức chỉ mua 2 gói quà cho 3 đứa cháu.
Có lẽ tụi nhóc sẽ không oánh nhau để tranh quà đâu, nhưng để ông chú đãng trí như bạn không quên ở lần sau, PHP đã thiết kế riêng hẳn lệnh foreach chỉ chạy đúng số lần bằng với số phần tử có trong một mảng. Hãy cùng Kiyoshi tìm hiểu về Câu lệnh foreach trong php thông qua bài học này..

Chúng ta sử dụng câu lệnh foreach trong php khi muốn lấy lần lượt theo thứ tự giá trị của từng phần tử trong một mảng.

Cú pháp câu lệnh như sau:

Cú pháp câu lệnh foreach trong php

foreach (tập hợp giá trị của mảng as biến){
Câu lệnh 1;
Câu lệnh 2;
}

Khi viết lệnh foreach chúng ta cần chỉ định :

  • mảng cần lấy phần tử ra
  • biến để chứa phần tử lấy ra từ mảng.
  • khối câu lệnh sẽ thực hiện .

Lệnh foreach sẽ lặp số lần bằng đúng với số lượng phần tử có trong mảng.

Trong mỗi vòng lặp lệnh foreach, chương trình lấy một phần tử trong mảng ra, gán giá trị của phần tử đó vào biến và thực hiện các câu lệnh trong khối câu lệnh.

Sau mỗi vòng lặp, giá trị của biến được làm rỗng để lưu trữ giá trị của phần tử trong vòng lặp tiếp theo.

Để hiểu rõ hơn, chúng ta hãy cùng xem ví dụ dưới đây:

Chương trình lấy từng loại quả ra khỏi giỏ quả

Giả sử chúng ta có giỏ quả gồm 3 loại quả là táo, cam ,dâu. Chúng ta sẽ dùng chương trình dưới đây để lấy từng quả ra khỏi giỏ.

<?php
$gio_qua = array('tao', 'cam', 'dau');

foreach ($gio_qua as $qua){
print $qua."\n";
}
?>

Lúc này, thứ tự thực hiện câu lệnh như sau:

0. Khởi tạo biến $giỏ quả chứa 3 giá trị gồm  `táo, cam , dâu`.     
1. Gán `táo` trong $giỏ quả vào biến $quả.
2. In ra màn hình giá trị của $quả (= táo), sau đó làm rỗng $quả.

3. Gán `cam` trong $giỏ quả vào biến $quả.
4. In ra màn hình giá trị của $quả. (=cam), sau đó làm rỗng $quả.

5. Gán `dâu` trong $giỏ quả vào biến $quả.
6. In ra màn hình giá trị của $quả. (=dâu), sau đó làm rỗng $quả.

6. Do đã lần lượt gán hết 3 quả trong $giỏ quả, nên kết thúc lệnh `foreach`.

Như đã thấy ở ví dụ trên, do trong $giỏ quả chỉ có 3 phần tử, nên lệnh foreach cũng sẽ chỉ lặp lại bằng đúng 3 lần mà thôi.

So sánh câu lệnh foreach và lệnh while trong php

Khác với lệnh while, câu lệnh foreach trong php không có biểu thức điều kiện. Câu lệnh foreach không dựa vào biểu thức điều kiện để quyết định số lần lặp, mà sẽ lặp số lần bằng đúng với số lượng phần tử có trong mảng đó.

Ngoài ra, chúng ta có thể sử dụng kết hợp lệnh break hay continue trong lệnh foreach tương tự như với lệnh while.

Cũng cần chú ý là không phải chúng ta lấy phần tử ra khỏi mảng, mà chỉ sao chép giá trị của phần tử đó và gán vào biến mà thôi, do đó mảng và những phần tử trong mảng vốn không hề thay đổi.
Nếu muốn thay đổi giá trị của phần tử trong mảng, bạn hãy xem qua bài Thay đổi giá trị một phần tử trong mảng với lệnh foreach nhé.

Thực hành

Trăm hay không bằng tay quen, hãy cùng thực hành với ví dụ sau đây:

<?php
print 'Chương trình lấy hoa quả ra khỏi giỏ quả'."\n";
$gio_qua = array('táo', 'cam', 'dâu');

foreach ($gio_qua as $qua){
print $qua."\n";
}
?>

Tổng kết

Chúng ta sử dụng câu lệnh foreach trong php khi muốn lấy lần lượt theo thứ tự giá trị của từng phần tử trong một mảng. Lệnh foreach bản chất không làm thay đổi giá trị của phần tử trong mảng mà chỉ gọi từng phần tử ra để xử lý thôi.
câu lệnh foreach trong php không chứa biểu thức điều kiện, vòng lặp foreach sẽ lặp đúng số lần bằng với số phần tử có trong mảng.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.