code example:
<?php
$members = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
foreach ($members as $x => $y) {
echo "$x : $y <br>";
}
?>
Kết quả:
Peter : 35
Ben : 37Joe : 43
Sử dụng KEY và VALUES
Mảng trên là một mảng được lập chỉ mục , trong đó mục đầu tiên có khóa 0, mục thứ hai có khóa 1, v.v.
Mảng kết hợp thì khác, mảng kết hợp sử dụng các khóa được đặt tên mà bạn gán cho chúng và khi lặp qua các mảng kết hợp, bạn có thể muốn giữ lại khóa cũng như giá trị.
Điều này có thể được thực hiện bằng cách chỉ định cả khóa và giá trị trong
Điều này có thể được thực hiện bằng cách chỉ định cả khóa và giá trị trong
foreach
định nghĩa, như sau:<?php
$members = array("Peter"=>"35", "Ben"=>"37", "Joe"=>"43");
foreach ($members as $x => $y) {
echo "$x : $y <br>";
}
?>
Kết quả:
Peter : 35
Ben : 37
Joe : 43
Ben : 37
Joe : 43
Vòng lặp foreach trên các đối tượng
In tên thuộc tính và giá trị của $myCar
đối tượng:
<?php
class Car {
public $color;
public $model;
public function __construct($color, $model) {
$this->color = $color;
$this->model = $model;
}
}
$myCar = new Car("red", "Volvo");
foreach ($myCar as $x => $y) {
echo "$x: $y<br>";
}
?>
Kết quả:
color: red
model: Volvo
model: Volvo
Hàm Break - Dừng
<?php
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as $x) {
if ($x == "blue") break;
echo "$x <br>";
}
?>
Kết quả:
red
green
green
Hàm Continue - Bỏ qua
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as $x) {
if ($x == "blue") continue;
echo "$x <br>";
}
?>
Kết quả:
red
green
yellow
green
yellow
Foreach Byref - Nguyên tắc trong vòng lặp Foreach
Theo mặc định, việc thay đổi một mục mảng sẽ không ảnh hưởng đến mảng ban đầu:
<?php
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as $x) {
if ($x == "blue") $x = "pink";
}
var_dump($colors);
?>
Kết quả:
array(4) {
[0]=>
string(3) "red"
[1]=>
string(5) "green"
[2]=>
string(4) "blue"
[3]=>
string(6) "yellow"
}
bằng cách sử dụng
&
ký tự trong foreach
phần khai báo, mục mảng được gán bởi reference , dẫn đến mọi thay đổi được thực hiện đối với mục mảng cũng sẽ được thực hiện đối với mảng ban đầu:Bằng cách gán các mục mảng theo tham chiếu , các thay đổi sẽ ảnh hưởng đến mảng ban đầu:
<pre>
<?php
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as &$x) {
if ($x == "blue") $x = "pink";
}
var_dump($colors);
?>
</pre>
Kết quả:
array(4) {
[0]=>
string(3) "red"
[1]=>
string(5) "green"
[2]=>
string(4) "pink"
[3]=>
string(6) "yellow"
}
endforeach
Cú foreach
pháp vòng lặp cũng có thể được viết bằng endforeach
câu lệnh như thế này
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as $x) :
echo "$x <br>";
endforeach;
?>
Kết quả:
red
green
blue
yellow
0 nhận xét:
Đăng nhận xét