Ticker

6/recent/ticker-posts

Header Ads Widget

Array Multidimensi dan Foreach Bersarang di PHP

Array Multidimensi dan Foreach Bersarang di PHP

Pada materi sebelumnya, kita sudah belajar tentang perulangan foreach di PHP. Perulangan foreach sangat sering digunakan untuk membaca isi array.

Namun, dalam praktik pemrograman web, data yang digunakan tidak selalu berbentuk array biasa. Kadang kita perlu menyimpan data yang lebih kompleks, misalnya data siswa, data produk, data kategori, atau data nilai.

Untuk menyimpan data seperti itu, kita bisa menggunakan array multidimensi.

Secara sederhana, array multidimensi adalah array yang berisi array lain di dalamnya.

Pengertian Array Multidimensi di PHP

Array multidimensi adalah array yang memiliki array lain di dalamnya. Dengan array multidimensi, kita bisa menyimpan data yang lebih lengkap dan terstruktur.

Contoh array multidimensi sederhana:

$siswa = [
    ["Budi", "XI RPL", 85],
    ["Ani", "XI TKJ", 90],
    ["Doni", "XI MM", 78]
];

Pada contoh di atas, variabel $siswa berisi beberapa array. Setiap array di dalamnya menyimpan data nama, kelas, dan nilai siswa.

Contoh Array Multidimensi di PHP

Berikut contoh array multidimensi yang lebih mudah dibaca:

$siswa = [
    [
        "nama" => "Budi",
        "kelas" => "XI RPL",
        "nilai" => 85
    ],
    [
        "nama" => "Ani",
        "kelas" => "XI TKJ",
        "nilai" => 90
    ],
    [
        "nama" => "Doni",
        "kelas" => "XI MM",
        "nilai" => 78
    ]
];

Pada contoh tersebut, setiap data siswa memiliki tiga informasi, yaitu:

  • nama
  • kelas
  • nilai

Array seperti ini lebih mudah digunakan karena setiap data memiliki key atau penanda yang jelas.

Menampilkan Array Multidimensi dengan Foreach

Untuk menampilkan data array multidimensi, kita dapat menggunakan perulangan foreach.

<?php
$siswa = [
    [
        "nama" => "Budi",
        "kelas" => "XI RPL",
        "nilai" => 85
    ],
    [
        "nama" => "Ani",
        "kelas" => "XI TKJ",
        "nilai" => 90
    ],
    [
        "nama" => "Doni",
        "kelas" => "XI MM",
        "nilai" => 78
    ]
];

foreach ($siswa as $data) {
    echo "Nama: " . $data["nama"] . "<br>";
    echo "Kelas: " . $data["kelas"] . "<br>";
    echo "Nilai: " . $data["nilai"] . "<br>";
    echo "<hr>";
}
?>

Hasilnya akan menampilkan data seperti berikut:

Nama: Budi
Kelas: XI RPL
Nilai: 85

Nama: Ani
Kelas: XI TKJ
Nilai: 90

Nama: Doni
Kelas: XI MM
Nilai: 78

Pada kode di atas, variabel $data digunakan untuk mengambil setiap isi dari array $siswa.

Apa Itu Foreach Bersarang?

Foreach bersarang adalah perulangan foreach yang berada di dalam perulangan foreach lainnya.

Foreach bersarang biasanya digunakan untuk membaca array yang memiliki struktur lebih dalam.

<?php
$data = [
    ["PHP", "HTML", "CSS"],
    ["MySQL", "JavaScript", "Bootstrap"]
];

foreach ($data as $kelompok) {
    foreach ($kelompok as $isi) {
        echo $isi . "<br>";
    }
}
?>

Kode di atas akan menampilkan semua isi array, yaitu:

PHP
HTML
CSS
MySQL
JavaScript
Bootstrap

Contoh Foreach Bersarang di PHP

Sekarang kita buat contoh yang lebih jelas.

<?php
$kelas = [
    "XI RPL" => ["Budi", "Ani", "Doni"],
    "XI TKJ" => ["Rina", "Sinta", "Agus"],
    "XI MM" => ["Rudi", "Tono", "Dewi"]
];

foreach ($kelas as $namaKelas => $daftarSiswa) {
    echo "<h3>Kelas: $namaKelas</h3>";

    foreach ($daftarSiswa as $siswa) {
        echo "- " . $siswa . "<br>";
    }

    echo "<br>";
}
?>

Penjelasan kode:

  • $kelas adalah array utama.
  • XI RPL, XI TKJ, dan XI MM adalah key dari array.
  • Setiap key berisi array daftar siswa.
  • Foreach pertama digunakan untuk membaca nama kelas.
  • Foreach kedua digunakan untuk membaca daftar siswa di dalam kelas tersebut.

Menampilkan Data Array ke Dalam Tabel HTML

Dalam pembuatan website, data array sering ditampilkan dalam bentuk tabel.

<?php
$produk = [
    [
        "nama" => "Keyboard",
        "harga" => 150000,
        "stok" => 10
    ],
    [
        "nama" => "Mouse",
        "harga" => 75000,
        "stok" => 25
    ],
    [
        "nama" => "Monitor",
        "harga" => 1200000,
        "stok" => 5
    ]
];
?>

<table border="1" cellpadding="8" cellspacing="0">
    <tr>
        <th>No</th>
        <th>Nama Produk</th>
        <th>Harga</th>
        <th>Stok</th>
    </tr>

    <?php
    $no = 1;
    foreach ($produk as $item) {
        echo "<tr>";
        echo "<td>" . $no++ . "</td>";
        echo "<td>" . $item["nama"] . "</td>";
        echo "<td>Rp " . number_format($item["harga"], 0, ',', '.') . "</td>";
        echo "<td>" . $item["stok"] . "</td>";
        echo "</tr>";
    }
    ?>
</table>

Kode di atas akan menampilkan data produk ke dalam tabel HTML.

Fungsi number_format() digunakan untuk membuat format harga menjadi lebih rapi, misalnya:

Rp 150.000
Rp 75.000
Rp 1.200.000

Contoh Foreach Bersarang untuk Data Nilai Siswa

Berikut contoh lain penggunaan foreach bersarang untuk menampilkan data nilai siswa.

<?php
$nilaiSiswa = [
    "Budi" => [
        "Matematika" => 85,
        "Bahasa Indonesia" => 90,
        "Pemrograman" => 88
    ],
    "Ani" => [
        "Matematika" => 92,
        "Bahasa Indonesia" => 87,
        "Pemrograman" => 95
    ],
    "Doni" => [
        "Matematika" => 78,
        "Bahasa Indonesia" => 80,
        "Pemrograman" => 82
    ]
];

foreach ($nilaiSiswa as $nama => $nilai) {
    echo "<h3>Nama Siswa: $nama</h3>";

    foreach ($nilai as $mapel => $angka) {
        echo $mapel . ": " . $angka . "<br>";
    }

    echo "<hr>";
}
?>

Hasilnya akan menampilkan nama siswa beserta nilai masing-masing mata pelajaran.

Kapan Menggunakan Array Multidimensi?

Array multidimensi digunakan ketika kita ingin menyimpan data yang memiliki banyak informasi.

Contohnya:

  • Data siswa
  • Data produk
  • Data pegawai
  • Data nilai
  • Data kategori
  • Data transaksi
  • Data menu website

Contoh data produk:

$produk = [
    [
        "nama" => "Laptop",
        "harga" => 7500000,
        "kategori" => "Elektronik"
    ],
    [
        "nama" => "Buku PHP",
        "harga" => 85000,
        "kategori" => "Buku"
    ]
];

Dengan array multidimensi, data menjadi lebih terstruktur dan mudah dikelola.

Kesimpulan

Array multidimensi adalah array yang memiliki array lain di dalamnya. Array jenis ini sangat berguna untuk menyimpan data yang lebih kompleks.

Untuk menampilkan data array multidimensi, kita dapat menggunakan perulangan foreach. Jika struktur array memiliki lebih dari satu tingkat, maka kita bisa menggunakan foreach bersarang.

Materi ini penting dipahami karena sering digunakan dalam pembuatan website dinamis menggunakan PHP, terutama saat menampilkan data dari database, data produk, data siswa, atau data transaksi.

Posting Komentar

0 Komentar

Rekomendasi Untuk Anda × +