Đầu tiên, chúng ta hãy nhắc lại vòng lặp là gì? Vòng lặp là một chuỗi các thao tác được lặp đi lặp lại nhiều lần trên một khối mã lệnh theo một nguyên tắc nhất định. Hiện tại, có nhiều loại vòng lặp php, chẳng hạn như for, while, do và vòng lặp foreach php trong số đó.
Vòng lặp foreach sẽ giúp bạn cải thiện mã nguồn của mình sạch hơn và nhanh hơn. Đặc biệt là để giúp những người mới bắt đầu học lập trình dễ dàng, hoặc các bài viết liên quan đến cơ sở dữ liệu.
Vậy php foreach này hoạt động như thế nào và cú pháp ra sao, hãy cùng chúng tôi tìm hiểu trong bài viết sau.
Cách hoạt động của vòng lặp php foreach
Giống như các vòng lặp khác trong php, vòng lặp foreach php là một cú pháp giúp bạn lặp lại một đoạn mã nhiều lần tùy theo số phần tử trong mảng.
Sự khác biệt là các vòng lặp foreach của php chỉ hoạt động với mảng, vì vậy nếu bạn cố gắng sử dụng chúng với các loại biến khác, rất dễ bị sai.
Hàm php foreach có mục đích cụ thể cho các loại biến php phức tạp hơn như mảng và đối tượng.
Mỗi vòng lặp, tham số $value được thay đổi thành một giá trị mới. Trong một vòng lặp php thông qua một mảng hoặc đối tượng, $value nhận từng giá trị từ phần tử đầu tiên cho đến hết mảng.
Đây là một ví dụ trong đó hàm php foreach được sử dụng để hiển thị từng phần tử trong mảng $animals:
<?php
$animals = array(“thỏ”, “mèo”, “BMW”, “lạt ma”);
foreach ($animals as $value)
{
echo “$value<br>”;
?>
(Nguồn: https://www.bitdegree.org/learn/php-for-loop#foreach-explained)
Cú pháp hàm foreach mảng PHP
Chúng chỉ áp dụng cho mảng và đối tượng. Nó sẽ gây ra lỗi nếu bạn cố gắng sử dụng nó với các biến thuộc kiểu dữ liệu khác.
Các vòng lặp dựa trên các phần tử chứ không phải chỉ số. Chúng cung cấp cách dễ nhất để lặp qua các phần tử của một mảng, chúng ta không cần tăng giá trị.
Dưới đây là 2 cú pháp foreach mảng php phổ biến:
Cú pháp 1:
foreach($array as $value){
//Mã thực thi
Cú pháp 2
foreach ($array as $key => $element) {
//Mã thực thi
Cách hoạt động của vòng lặp php foreach
Hàm foreach trong php dùng để duyệt qua các phần tử của mảng. Dựa trên hai ngữ pháp trên, vòng lặp foreach cũng có nguyên tắc hoạt động như sau:
- Giá trị đầu tiên của mảng $array sẽ được gán cho biến tạm thời $value trong vòng lặp đầu tiên
- Sau đó, qua mỗi vòng lặp, biến tạm thời sẽ được gán cho phần tử tiếp theo của mảng
- Và cứ thế, vòng lặp sẽ duyệt qua tất cả các phần tử trong $array.
sơ đồ luồng vòng lặp foreach của php
Để giúp bạn hiểu sâu hơn về các vòng lặp foreach trong php, đây là sơ đồ của chúng
ví dụ về hàm foreach của php
Để giúp bạn hiểu rõ hơn về vòng lặp foreach trong php, đây là một vài ví dụ:
Ví dụ 1
Chương trình php sử dụng foreach trong hàm php để xuất các phần tử mảng
<?php
//khai báo mảng
$season = array(“mùa hè”, “mùa đông”, “mùa thu”, “mưa”);
//Dùng foreach để lặp qua các phần tử của mảng
foreach ($phần as $element) {
echo “$element”;
echo “</br>”;
?>
Kết quả:
Mùa hè
Mùa đông
Mùa thu
Trời đang mưa
Ví dụ 2
Một chương trình php sử dụng vòng lặp foreach để xuất các phần tử mảng kết hợp
<?php
//khai báo mảng
$employee = Mảng (
“Tên” => “Alex”,
“email” => “alex_jtp@gmail.com”,
“tuổi” => 21,
“giới tính” => “nam”
);
//Hiển thị các phần tử mảng kết hợp thông qua vòng lặp foreach
foreach ($employee as $key => $element) {
phím echo $. “:”. phần tử $;
echo “</br>”;
?>
Kết quả:
Tên: Alex
Email: alex_jtp@gmail.com
Tuổi: 21
Giới tính: Nam
Ví dụ 3
Mảng nhiều chiều
<?php
//khai báo mảng nhiều chiều
$a = Mảng();
$a[0][0] = “Alex”;
$a[0][1] = “Bob”;
$a[1][0] = “Camilla”;
$a[1][1] = “Từ chối”;
//Hiển thị các phần tử mảng đa chiều thông qua vòng lặp foreach
foreach ($a as $e1) {
foreach ($e1 as $e2) {
echo “$e2n”;
?>
Kết quả:
Alex Bob Camilla từ chối
Ví dụ 4
Mảng động
<?php
//Mảng động
foreach ( mảng (‘i’, ‘r’, ‘o’, ‘n’, ‘h’, ‘a’, ‘c’, ‘ k’) as $elements) {
echo “$elementn”;
?>
Kết quả:
Tôi đang hack
Kết luận:
Đối với những công việc lặp đi lặp lại nhiều lần trong cùng một thao tác, vòng lặp có thể giúp quy trình làm việc của bạn giảm đi rất nhiều thời gian.
Sử dụng foreach php để duyệt qua tất cả các phần tử, đặc biệt là các phần tử mảng.
Hy vọng bài viết vòng lặp foreach trong php đã cung cấp cho bạn những thông tin cần thiết.
Nếu bạn muốn vừa học hỏi thêm kiến thức, vừa tích lũy kinh nghiệm thực tế khi học php. Hãy xem khóa học php trực tuyến của ironhack vietnam!