Menu
Coddy logo textTech

Anahtarla Değerleri Değiştirme

Coddy'nin PHP Journey'sinin Temeller bölümünün bir parçası. Ders 43 / 71.

İndeksli dizi öğelerini konumlarına göre değiştirmeyi öğrendiğin gibi, ilişkisel dizilerdeki değerleri de anahtarlarını kullanarak güncelleyebilirsin. Sözdizimi aynıdır: mevcut bir anahtara yeni bir değer ata.

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

$person["age"] = 26;
$person["city"] = "London";

echo $person["age"];  // 26
echo $person["city"]; // London
?>

Zaten mevcut olan bir anahtara bir değer atadığınızda, PHP eski değeri yeni değerle basitçe değiştirir. Anahtarın kendisi değişmeden kalır: yalnızca onunla ilişkili değer güncellenir.

Bu, verilerin zaman içinde değişmesi gerektiğinde kullanışlıdır. Örneğin, bir kullanıcının durumunu güncellemek, bir ürünün fiyatını değiştirmek veya yanlış girilmiş bilgileri düzeltmek için kullanılabilir. Değer gerektiğinde değiştirilebilirken anahtar, sabit bir referans noktası görevi görür.

challenge icon

Görev

Kolay

Bir ürünün bilgilerini temsil eden bir JSON nesnesi içeren bir girdi satırı okuyun (ör. {"name": "Laptop", "price": 999, "stock": 50}).

Ardından dört girdi daha okuyun:

  • Bir string key1 - güncellenecek ilk anahtar
  • Bir string value1 - key1 için yeni değer
  • Bir string key2 - güncellenecek ikinci anahtar
  • Bir string value2 - key2 için yeni değer

JSON girdisinden bir ilişkisel dizi oluşturun, ardından:

  1. key1 ile ilişkilendirilmiş değeri value1 olarak güncelleyin
  2. key2 ile ilişkilendirilmiş değeri value2 olarak güncelleyin
  3. key1 içindeki güncellenmiş değeri yazdırın
  4. key2 içindeki güncellenmiş değeri yazdırın

Her sonucu ayrı bir satıra yazdırın.

Örnek:

Girdiler {"name": "Laptop", "price": 999, "stock": 50}, price, 1099, stock ve 45 ise çıktı şu olmalıdır:

1099
45

Girdiler {"city": "Paris", "country": "France", "population": 2000000}, city, London, country ve UK ise çıktı şu olmalıdır:

London
UK

Kendin dene

<?php
// JSON girişini oku
$jsonInput = trim(fgets(STDIN));

// Güncellenecek anahtarları ve değerleri oku
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));

// JSON'u ilişkisel diziye dönüştür
$product = (array)json_decode($jsonInput, true);

// TODO: Kodunuzu aşağıya yazın
// 1. key1 ile ilişkili değeri value1 olarak güncelle
// 2. key2 ile ilişkili değeri value2 olarak güncelle
// 3. Güncellenmiş değerleri yazdır

?>
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Temeller bölümündeki tüm dersler

Kendi başına pratik yap: Online PHP derleyicisi