Hướng dẫn difference between for loop and foreach loop in php - sự khác biệt giữa vòng lặp for và vòng lặp foreach trong php

Hướng dẫn difference between for loop and foreach loop in php - sự khác biệt giữa vòng lặp for và vòng lặp foreach trong php
Trong PHP, có bốn loại vòng lặp nói chung, trong khi, làm trong khi, cho và foreach. Trong bài viết này, chúng tôi sẽ kiểm tra sự khác biệt giữa FOR và FOREACH, trong đó sự khác biệt trước giữa chúng là đối với Loop sử dụng biến lặp trong khi Foreach chỉ hoạt động trên mảng interator.

Vòng lặp trong một ngôn ngữ lập trình đóng một vai trò quan trọng trong bất kỳ cấu trúc lập trình nào. Hàm chính của một vòng lặp là thực thi cùng một khối mã nhiều lần, nhiều lần cho đến khi một điều kiện nhất định được thỏa mãn.

Nội dung: Đối với VS Foreach

    1. Biểu đồ so sánh
    2. Sự định nghĩa
    3. Sự khác biệt chính
    4. Sự kết luận

Biểu đồ so sánh

Sự định nghĩaSự khác biệt chínhSự kết luận
Cơ sở để so sánhCho mỗi
Thực hiện hơnBiếnMảng số và kết hợp
Đang làm việc
Vào cuối điều kiện đã cho
Vào cuối số lượng mảng
Các loại thực hiện
Duy nhất
{//If expr2 is true, do this}
Hai
{//Do Something}
//Another form, for key & values
foreach ($array as $key => $value)
{//Do Something}

Cú pháp

for (expr1; expr2; expr3) {// nếu expr2 là đúng, hãy làm điều này}for loop is a more concise form of the other loops like while and do while in PHP. In the while loop, a counter is set to start with, then it is tested in a condition before each iteration. At last, the counter is modified at the end of each iteration. While in for loop, the expressions and condition are defined at a time inside the for loop parenthesis as shown in the structure below:

foreach ($ mảng là $ value) {// làm điều gì đó} // một hình thức khác, cho khóa & giá trị foreach ($ mảng là $ key => $ value) {// làm điều gì đó}
{
Code to be executed or Statements;
}

Định nghĩa của cho

  • Vòng lặp For là một dạng ngắn gọn hơn của các vòng lặp khác như trong khi và làm trong khi ở php. Trong vòng lặp trong khi, một bộ đếm được đặt để bắt đầu, sau đó nó được kiểm tra trong một điều kiện trước mỗi lần lặp. Cuối cùng, bộ đếm được sửa đổi ở cuối mỗi lần lặp. Trong khi trong vòng lặp, các biểu thức và điều kiện được xác định tại một thời điểm bên trong dấu ngoặc đơn cho vòng lặp như trong cấu trúc dưới đây:: The initial values are assigned to the counter variables which is evaluated once unconditionally at the beginning and before the first execution of the body of the loop.
  • cho (khởi tạo; điều kiện; tăng) {mã được thực thi hoặc câu lệnh; }: The condition expression is evaluated prior to each iteration. If the condition is true the nested statements are executed otherwise the execution will be ceased.
  • Các vòng lặp thực thi một khối mã hết lần này đến lần khác cho đến khi điều kiện bị làm sai lệch. Các yếu tố của vòng lặp cho vòng lặp được đưa ra dưới đây:: This expression modifies the value of the loop counter and is evaluated in the end of each iteration.
  • Khởi tạo: Các giá trị ban đầu được gán cho các biến bộ đếm được đánh giá một khi vô điều kiện ở đầu và trước khi thực hiện đầu tiên cơ thể của vòng lặp.: The code and statements are executed one time in each iteration.

Điều kiện: Biểu thức điều kiện được đánh giá trước mỗi lần lặp. Nếu điều kiện là đúng, các câu lệnh lồng nhau được thực thi nếu không thì việc thực thi sẽ bị chấm dứt.

";
?>

Output:

1 minutes has 60 seconds
2 minutes has 120 seconds
3 minutes has 180 seconds
4 minutes has 240 seconds
5 minutes has 300 seconds
6 minutes has 360 seconds
7 minutes has 420 seconds
8 minutes has 480 seconds
9 minutes has 540 seconds
10 minutes has 600 seconds

Tăng: Biểu thức này sửa đổi giá trị của bộ đếm vòng lặp và được đánh giá vào cuối mỗi lần lặp.

Các câu lệnh: Mã và câu lệnh được thực thi một lần trong mỗi lần lặp.foreach loop is quite different from the for a loop as it permits the iteration of the elements in an array. To make the language more convenient for the programmers, the developers of PHP provided a loop structure specifically designed for the arrays, since the basic loop is not capable of performing operations with an array. Unlike for loop, the foreach does not require any initialization and termination expressions. The foreach loop work in a proper way with list() and each() constructs also.

Ví dụ về cho vòng lặp

Định nghĩa của foreach

Vòng lặp foreach khá khác biệt so với vòng lặp vì nó cho phép lặp của các phần tử trong một mảng. Để làm cho ngôn ngữ thuận tiện hơn cho các lập trình viên, các nhà phát triển của PHP đã cung cấp một cấu trúc vòng lặp được thiết kế đặc biệt cho các mảng, vì vòng lặp cơ bản không có khả năng thực hiện các hoạt động với một mảng. Không giống như Loop, Foreach không yêu cầu bất kỳ biểu thức khởi tạo và chấm dứt. Vòng lặp foreach hoạt động theo cách thích hợp với danh sách () và mỗi () () các cấu trúc cũng vậy.

Các phần tử mảng có thể được theo dõi dễ dàng bằng cách lập chỉ mục được xác định trước, nhưng điều này đòi hỏi một lượng lớn không gian bộ nhớ để ghi nhớ số lượng chính xác của mục. Vì vậy, các mảng kết hợp có thể được sử dụng thay cho một mảng được lập chỉ mục bằng số tham chiếu các mục trong một mảng theo tên thay vì một số.

Làm việc của một vòng lặp foreach

Quá trình bắt đầu với mục đầu tiên và chấm dứt với mục cuối cùng, vì vậy lập trình viên không cần biết số lượng mục tồn tại trong mảng.

  • Tại thời điểm thực hiện một câu lệnh foreach trong PHP, mục đầu tiên của mảng được đặt trong biến theo từ khóa ‘như từ khóa. Bất cứ khi nào luồng điều khiển chuyển đến Foreach, phần tử mảng tiếp theo được sắp xếp bên cạnh ‘AS ​​AS & NBSP; Từ khóa.
  • Ví dụ về vòng lặp foreach

Có hai loại triển khai của Foreach Loop.

';
}
?>

vòng lặp để lặp qua một mảng

cat
lion
tiger
leopard

Foreach Loop với các phím và giá trị trong một mảng

 $name)
{
echo $key. ' - '.$name.'
'; } ?>

Output:

0 - cat
1 - lion
2 - tiger
3 - leopard

Mảng đơn giản

'Frog','Reptile'=>'Crocodile','Mammal'=>'Monkey','Aves'=>'Owl');
foreach($assoc as $key => $name)
{
echo "$name => $key 
"; } ?>

Output:

Frog => Amphibian 
Crocodile => Reptile 
Monkey => Mammal
Owl => Aves

  1. Đầu ra:
  2. Mảng được lập chỉ mục bằng số với các khóa và giá trị
  3. Mảng liên kết với các khóa và giá trị

Sự kết luận

Cơ sở để so sánh

Sự khác biệt giữa Loop và Foreach Loop là gì?

Đối với các vòng lặp thực thi một khối mã cho đến khi một biểu thức trả về sai trong khi Foreach Loop đã thực hiện một khối mã thông qua các mục trong các bộ sưu tập đối tượng.Đối với Loop có thể thực thi với các bộ sưu tập đối tượng hoặc không có bất kỳ bộ sưu tập đối tượng nào trong khi Foreach Loop chỉ có thể thực hiện với các bộ sưu tập đối tượng.. For loop can execute with object collections or without any object collections while ForEach loop can execute with object collections only.

Cái nào nhanh hơn hoặc cho vòng lặp trong PHP?

Vòng lặp foreach được coi là có hiệu suất tốt hơn nhiều so với của Generic cho Loop.Vòng lặp foreach mặc dù lặp lại trên một loạt các phần tử, việc thực thi được đơn giản hóa và hoàn thành vòng lặp trong thời gian ngắn hơn.foreach loop is considered to be much better in performance to that of the generic for loop. The foreach loop though iterates over an array of elements, the execution is simplified and finishes the loop in less time comparatively.

Chúng ta sử dụng ở đâu cho Loop và Foreach trong PHP?

Vòng lặp foreach chỉ hoạt động trên các mảng và được sử dụng để lặp qua từng cặp khóa/giá trị trong một mảng., and is used to loop through each key/value pair in an array.

Cái nào tốt hơn cho Loop hoặc Foreach?

Trong trường hợp bạn làm việc với một bộ sưu tập các đối tượng, foreach sẽ tốt hơn, nhưng nếu bạn tăng số, một vòng lặp là tốt hơn., but if you increment a number, a for loop is better.