Mục lục bài viết

Trong bài này, chúng ta sẽ tìm hiểu về mảng kết hợp (associative array) trong PHP. Để học tốt bài này, các bạn cần đọc lại bài Cài đặt môi trường lập trình Web PHP với XAMPP để biết cách chạy ứng dụng web PHP với XAMPP.

1. Mảng kết hợp (associative array) là gì?

Mảng kết hợp (associative array) trong PHP được sử dụng để lưu trữ các cặp key-value. Mỗi cặp key-value là một phần tử trong mảng. Các key có thể là số (number) hoặc chuỗi (string). Các value có thể là bất kỳ kiểu dữ liệu nào.

Có 2 cách để tạo một mảng kết hợp là:

Cách 1 – Sử dụng hàm array()

<?php
$arr1 = array("John"=>21, "Kane"=>29, "Son"=>30);
// Array ( [John] => 21 [Kane] => 29 [Son] => 30 )
print_r($arr1);
$arr2 = array(true=>21, 5=>1.2, "Son"=>30);
// Array ( [1] => 21 [5] => 1.2 [Son] => 30 )
print_r($arr2);
$arr3 = array("hihi"=>"gochocit.com", "car"=>"camry", "computer"=>"acer");
// Array ( [hihi] => gochocit.com [car] => camry [computer] => acer )
print_r($arr3);
?>

Cách 2 – Gán giá trị cho key trong array

<?php
$arr1["John"] = 21;
$arr1["Kane"] = 29;
$arr1["Son"] = 30;
// Array ( [John] => 21 [Kane] => 29 [Son] => 30 )
print_r($arr1);
?>

2. Duyệt các phần tử trong associative array

Sử dụng vòng lặp foreach

<?php
$arr1 = array("John"=>21, "Kane"=>29, "Son"=>30);
foreach ($arr1 as $name => $age){ 
  echo $name.": ".$age."<br>"; 
} 
?>
Kết quả
John: 21
Kane: 29
Son: 30

Sử dụng vòng lặp for

<?php
$arr1 = array("John"=>21, "Kane"=>29, "Son"=>30);
$name = array_keys($arr1); 
$arr1Length = count($name);  
for($i=0; $i < $arr1Length; ++$i) { 
  echo $name[$i].": ".$arr1[$name[$i]]."<br>";
} 
?>
Kết quả
John: 21
Kane: 29
Son: 30

Trong ví dụ trên, hàm array_keys() có chức năng trả về một mảng (array) chứa tất cả các key trong associative array.

Tác giả

HV Lee

500+ bài viết về lập trình, phần cứng, mạng máy tính và công nghệ. Chia sẻ kiến thức từ những gì đã học, đã dạy và đã trải nghiệm — để người học CNTT hiểu sâu hơn và làm được nhiều hơn.

Gợi ý tiếp theo

Mảng 2 chiều (2 dimensional array) trong PHP

Học tiếp