> For the complete documentation index, see [llms.txt](https://learn.devlabss.my.id/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://learn.devlabss.my.id/php/bab-4-mengelola-array/praktik-membuat-daftar-menu-restoran.md).

# Praktik: Membuat Daftar Menu Restoran

Latihan ini memakai array untuk menyimpan daftar makanan, harga, dan kategori.

Tujuannya adalah melatih struktur data dan perulangan dalam satu kasus nyata.

### Target praktik

Setelah praktik ini selesai, Anda seharusnya bisa:

* membuat data menu dengan array
* membaca data bertingkat
* menampilkan seluruh menu dengan `foreach`

### Studi kasus

Anda diminta membuat daftar menu restoran sederhana.

Setiap menu punya:

* nama
* harga
* kategori

### Kode latihan

```php
<?php
$menu = [
    [
        "nama" => "Nasi Goreng",
        "harga" => 15000,
        "kategori" => "Makanan"
    ],
    [
        "nama" => "Es Teh",
        "harga" => 5000,
        "kategori" => "Minuman"
    ],
    [
        "nama" => "Mie Ayam",
        "harga" => 12000,
        "kategori" => "Makanan"
    ]
];

foreach ($menu as $item) {
    echo "Nama: " . $item["nama"];
    echo "<br>";
    echo "Harga: " . $item["harga"];
    echo "<br>";
    echo "Kategori: " . $item["kategori"];
    echo "<br><br>";
}
?>
```

### Penjelasan singkat

Program ini menggabungkan beberapa materi sekaligus:

* array untuk menyimpan banyak data
* associative array untuk memberi nama atribut
* multidimensional array untuk menyimpan banyak item
* `foreach` untuk menampilkan semuanya

### Hasil yang diharapkan

Browser akan menampilkan daftar menu satu per satu dengan nama, harga, dan kategori.

### Tantangan tambahan

Coba kembangkan program ini dengan:

* menambah dua menu baru
* menampilkan jumlah seluruh menu
* memisahkan menu makanan dan minuman secara logika sederhana

### Poin evaluasi praktik Bab 4.

Pastikan Anda sudah memahami poin berikut:

* Saya berhasil membuat data menu dengan array.
* Saya bisa mengambil data dari array bertingkat.
* Saya berhasil memakai `foreach` untuk menampilkan data.
* Saya mulai paham hubungan antara array dan perulangan.

Jika semua sudah jelas, lanjut ke [4.6 Checkpoint: Uji Pemahamanmu Sebelum Lanjut!](/php/bab-4-mengelola-array/4.6-checkpoint-uji-pemahamanmu-sebelum-lanjut.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://learn.devlabss.my.id/php/bab-4-mengelola-array/praktik-membuat-daftar-menu-restoran.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
