Mảng trong PHP.

Về cơ bản mảng trong PHP cũng tuân thủ cách khai báo và đặt tên giống như trong javaScript. Chỉ khác là ta dùng ký tự ‘ $ ‘ thay thế cho ‘ let’ và cũng có 2 cách để khai báo mảng đó là :

  1. $tên mảng = array (phần tử 1, phần tử 2,…..);
  2. $tên mảng = [phần tử 1, phần tử 2,…..];

Các phần tử trong mảng nếu là chuỗi(string) thì sẽ nằm trong dấu ” ” hoặc ‘ ‘ .

Để truy xuất các phần tử trong mảng ta dùng echo, print để truy xuất theo mảng chỉ số, hoặc gán giá trị cho các phần tử của mảng. Và dùng var_dump, print_r để truy xuất toàn bộ phần tử trong mảng.Dùng hàm count() để lấy độ dài của mảng, dùng for để duyệt qua các phần tử của mảng 1 chiều.  Associative Array(mảng liên kết) là mảng sử dụng các khóa bằng tên thay cho chỉ số thông thường
Ví dụ: $age = array(“Peter”=>”35”, “Ben”=>”37″,”Joe”=>”43”);
Có thể truy xuất phần tử qua tên khóa, ví dụ: $age[‘Peter’] = “35”; …. Và có thể sử dụng foreach để duyệt qua tất cả các phần tử của một associative array(mảng liên kết). Ví dụ : foreach($age as $key => $value) { echo “Key=” . $key . “, Value=” . $value; }.Mảng nhiều chiều là mảng có các phần tử là các mảng.Có thể có mảng 2 chiều, 3 chiều, 4 chiều… hoặc nhiều hơn nhưng thông thường chúng ta chỉ làm việc với mảng 2 chiều, vì các mảng nhiều chiều hơn thì khó quản lý hơn .Mảng nhiều chiều thì cần nhiều chỉ số để có thể truy xuất đến một phần tử, chẳng hạn: Mảng 2 chiều thì cần 2 chỉ số để truy xuất phần tử còn mảng 3 chiều thì cần 3 chỉ số để truy xuất phần tử. Ví dụ khai báo mảng đa chiều:
$cars = array
(
array(“Volvo”,22,18),
array(“BMW”,15,13),
array(“Saab”,5,2),
array(“Land Rover”,17,15)
);


Sử dụng các vòng lặp lồng nhau để duyệt qua tất cả các phần tử của mảng nhiều chiều
• Ví dụ: <?php
for ($row = 0; $row < 4; $row++) {
echo “<ul>”;
for ($col = 0; $col < 3; $col++) {
echo “<li>”.$cars[$row][$col].”</li>”;
}
echo “</ul>”;
}
?>

Mọi người nên tìm đọc và xem ví dụ trực tiếp như vậy sẽ hiểu rõ hơn.

Thanks !

Leave a reply:

Your email address will not be published.

Site Footer

Sliding Sidebar

Facebook