Menu
CoddyTech

Perulangan dengan Kunci dan Nilai

Termasuk bagian Dasar-Dasar dalam perjalanan PHP di Coddy. Pelajaran 50 dari 71.

Di pelajaran sebelumnya, kamu belajar bagaimana foreach memberimu akses ke setiap nilai dalam array. Namun, bagaimana jika kamu juga memerlukan kuncinya? Ini sangat berguna saat bekerja dengan array asosiatif.

Perulangan foreach memiliki sintaks yang diperluas, yang menyediakan key dan value pada setiap iterasi:

<?php
$person = [
    "name" => "Alice",
    "age" => 25,
    "city" => "Paris"
];

foreach ($person as $key => $value) {
    echo "$key: $value\n";
}
?>

Ini menghasilkan:

name: Alice
age: 25
city: Paris

Sintaks foreach ($array as $key => $value) menetapkan kunci saat ini ke $key dan nilai yang sesuai ke $value. Kamu bisa memberi nama variabel ini sesukamu, asalkan namanya deskriptif.

Ini juga berfungsi dengan array berindeks, dengan kunci berupa indeks numerik:

<?php
$colors = ["red", "green", "blue"];

foreach ($colors as $index => $color) {
    echo "$index: $color\n";
}
?>

Ini menghasilkan:

0: red
1: green
2: blue

Akses ke key dan nilai memudahkan kamu menampilkan data berlabel atau melakukan operasi yang bergantung pada key.

challenge icon

Tantangan

Mudah

Baca satu baris input yang berisi object JSON yang mewakili produk dengan key dan nilai (misalnya, {"name":"Laptop","price":"999","stock":"25"}).

Gunakan perulangan foreach dengan sintaks key-value untuk mengiterasi data produk. Cetak setiap key dan nilai yang sesuai dengan format:

[key] => [value]

Cetak setiap pasangan key-value pada baris terpisah.

Contoh 1:

Jika input-nya adalah {"name":"Laptop","price":"999","stock":"25"}, output-nya harus:

name => Laptop
price => 999
stock => 25

Contoh 2:

Jika input-nya adalah {"title":"PHP Basics","author":"John","pages":"350"}, output-nya harus:

title => PHP Basics
author => John
pages => 350

Contoh 3:

Jika input-nya adalah {"city":"Paris","country":"France"}, output-nya harus:

city => Paris
country => France

Coba sendiri

<?php
// Baca input JSON
$input = trim(fgets(STDIN));

// Ubah JSON menjadi array asosiatif
$product = (array)json_decode($input, true);

// TODO: Tulis kodemu di bawah ini
// Gunakan foreach loop dengan sintaks pasangan kunci-nilai untuk menelusuri data product
// Cetak setiap kunci dan nilai dalam format: [key] => [value]

?>
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler PHP online