Tutorial PHP #11: Associative Array dan Multidimensional Array

1. Associative Array

Associative array memakai string sebagai key (kunci), bukan index angka. Ini membuat data lebih mudah diakses karena kamu tahu arti setiap key-nya.

<?php
$user = [
    "nama"  => "Ariq",
    "umur"  => 25,
    "email" => "ariq@email.com",
    "kota"  => "Semarang"
];

// Mengakses data berdasarkan key
echo $user["nama"];    // Output: Ariq
echo $user["kota"];    // Output: Semarang

// Mengubah nilai
$user["umur"] = 26;

// Menambah key baru
$user["pekerjaan"] = "Developer";
?>

2. Looping Associative Array

<?php
$produk = [
    "nama"   => "Laptop",
    "harga"  => 12000000,
    "stok"   => 15,
    "brand"  => "Asus"
];

foreach ($produk as $key => $value) {
    echo "<strong>$key</strong>: $value <br>";
}
// Output:
// nama: Laptop
// harga: 12000000
// stok: 15
// brand: Asus
?>

3. Multidimensional Array

Array di dalam array. Sangat berguna untuk menyimpan data tabular seperti hasil query database.

<?php
$users = [
    ["nama" => "Ariq",  "umur" => 25, "kota" => "Semarang"],
    ["nama" => "Budi",  "umur" => 22, "kota" => "Jakarta"],
    ["nama" => "Cici",  "umur" => 28, "kota" => "Bandung"],
];

// Mengakses data
echo $users[0]["nama"];   // Output: Ariq
echo $users[1]["kota"];   // Output: Jakarta
echo $users[2]["umur"];   // Output: 28
?>

4. Looping Multidimensional Array

<?php
$users = [
    ["nama" => "Ariq",  "umur" => 25],
    ["nama" => "Budi",  "umur" => 22],
    ["nama" => "Cici",  "umur" => 28],
];

foreach ($users as $index => $user) {
    echo ($index + 1) . ". " . $user["nama"] . " - " . $user["umur"] . " tahun <br>";
}
// Output:
// 1. Ariq - 25 tahun
// 2. Budi - 22 tahun
// 3. Cici - 28 tahun
?>

5. Array Bersarang Lebih Dalam

<?php
$toko = [
    "nama"    => "Toko ABC",
    "alamat"  => [
        "jalan"    => "Jl. Merdeka No. 10",
        "kota"     => "Semarang",
        "provinsi" => "Jawa Tengah"
    ],
    "produk"  => ["Laptop", "Monitor", "Keyboard"]
];

echo $toko["nama"];                   // Output: Toko ABC
echo $toko["alamat"]["kota"];         // Output: Semarang
echo $toko["produk"][0];              // Output: Laptop
?>

6. Fungsi Berguna untuk Associative Array

<?php
$user = ["nama" => "Ariq", "umur" => 25, "kota" => "Semarang"];

// Ambil semua key
$keys = array_keys($user);
print_r($keys);   // ["nama", "umur", "kota"]

// Ambil semua value
$values = array_values($user);
print_r($values);   // ["Ariq", 25, "Semarang"]

// Cek apakah key ada
if (array_key_exists("email", $user)) {
    echo "Ada email";
} else {
    echo "Email tidak ada";
}

// Gabung dua array
$tambahan = ["email" => "ariq@mail.com"];
$user = array_merge($user, $tambahan);
?>

7. Ringkasan

  • Associative array memakai string sebagai key, lebih deskriptif dari index angka
  • Multidimensional array menyimpan array di dalam array
  • Gunakan foreach ($arr as $key => $value) untuk iterasi associative array
  • Sangat berguna untuk merepresentasikan data dari database atau API

Tutorial berikutnya membahas string handling di PHP.


ariq fadhil

Im Ariq Tech, a Top Rated Fullstack Developer with 5+ years of experience, delivering high-quality solutions across 50+ projects.