Mengubah Nilai Berdasarkan Kunci
Termasuk bagian Dasar-Dasar dalam perjalanan PHP di Coddy. Pelajaran 43 dari 71.
Sama seperti kamu belajar mengubah elemen array berindeks berdasarkan posisinya, kamu bisa memperbarui nilai dalam array asosiatif menggunakan key-nya. Sintaksnya sama: tetapkan nilai baru ke key yang sudah ada.
<?php
$person = [
"name" => "Alice",
"age" => 25,
"city" => "Paris"
];
$person["age"] = 26;
$person["city"] = "London";
echo $person["age"]; // 26
echo $person["city"]; // London
?>Saat kamu menetapkan nilai ke kunci yang sudah ada, PHP cukup mengganti nilai lama dengan nilai baru. Kuncinya sendiri tetap sama, hanya nilai yang terkait dengannya yang diperbarui.
Ini berguna saat data perlu berubah seiring waktu. Misalnya, memperbarui status pengguna, mengubah harga produk, atau memperbaiki informasi yang dimasukkan secara keliru. Kunci berfungsi sebagai titik acuan yang stabil, sementara nilainya dapat diubah sesuai kebutuhan.
Tantangan
MudahBaca satu baris input yang berisi object JSON yang merepresentasikan informasi produk (misalnya, {"name": "Laptop", "price": 999, "stock": 50}).
Lalu baca empat input lagi:
- String
key1, key pertama yang akan diperbarui - String
value1, nilai baru untukkey1 - String
key2, key kedua yang akan diperbarui - String
value2, nilai baru untukkey2
Buat associative array dari input JSON, lalu:
- Perbarui nilai yang terkait dengan
key1menjadivalue1 - Perbarui nilai yang terkait dengan
key2menjadivalue2 - Cetak nilai yang telah diperbarui pada
key1 - Cetak nilai yang telah diperbarui pada
key2
Cetak setiap hasil pada baris terpisah.
Contoh:
Jika inputnya adalah {"name": "Laptop", "price": 999, "stock": 50}, price, 1099, stock, dan 45, outputnya seharusnya:
1099
45Jika inputnya adalah {"city": "Paris", "country": "France", "population": 2000000}, city, London, country, dan UK, outputnya seharusnya:
London
UKCoba sendiri
<?php
// Baca input JSON
$jsonInput = trim(fgets(STDIN));
// Baca kunci dan nilai yang akan diperbarui
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));
// Ubah JSON menjadi array asosiatif
$product = (array)json_decode($jsonInput, true);
// TODO: Tulis kodemu di bawah ini
// 1. Perbarui nilai yang terkait dengan key1 menjadi value1
// 2. Perbarui nilai yang terkait dengan key2 menjadi value2
// 3. Cetak nilai yang telah diperbarui
?>Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Perbandingan & Logika
Operator PerbandinganKesamaan & IdentitasOperator Logika Bagian 1Operator Logika Bagian 2Rangkuman: Logika Sederhana7array Bagian 2: Asosiatif
Pengantar array AsosiatifMengakses Nilai Berdasarkan KunciMengubah Nilai Berdasarkan KunciMenambahkan Pasangan Kunci-Nilai BaruMemeriksa Apakah Kunci AdaRingkasan: Penyimpanan Data Kunci-Nilai2Variabel dan Tipe Data
AngkaString dan Tanda KutipBooleanKonvensi PenamaanRangkuman, Inisialisasi VariabelVariabel KosongPenggabungan stringMengambil input PenggunaKonversi ke Tipe Data Lain5Logika Percabangan
Pernyataan ifIf-elseOperator ternaryOperator koalesensi nullPernyataan switchRangkuman: Membuat Keputusan3Operator Dasar
Operator AritmetikaOperator ModuloOperator PangkatPenugasan GabunganInkrementasi/DekrementasiPrioritas OperatorUlasan: Perhitungan SederhanaOperator stringLatihan sendiri: Compiler PHP online