Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تعديل القيم عبر المفتاح

جزء من قسم الأساسيات في رحلة PHP على Coddy. الدرس 43 من 71.

تمامًا كما تعلمت تعديل عناصر المصفوفة array المفهرسة حسب موضعها، يمكنك تحديث values في المصفوفات associative باستخدام keys الخاصة بها. الصياغة متطابقة: عيّن قيمة جديدة إلى مفتاح موجود.

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

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

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

عند تعيين قيمة إلى مفتاح موجود بالفعل، يستبدل PHP القيمة القديمة بالقيمة الجديدة ببساطة. يظل المفتاح نفسه دون تغيير: يتم تحديث associated value فقط.

يكون هذا مفيدًا عندما تحتاج البيانات إلى التغيير بمرور الوقت. على سبيل المثال، تحديث حالة user، أو تغيير سعر product، أو تصحيح معلومات أُدخلت بشكل غير صحيح. يعمل المفتاح كنقطة مرجعية ثابتة، بينما يمكن تعديل القيمة حسب الحاجة.

challenge icon

التحدي

سهل

اقرأ سطرًا من الإدخال يحتوي على كائن JSON يمثّل معلومات منتج (مثلًا، {"name": "Laptop", "price": 999, "stock": 50}).

ثم اقرأ أربعة مدخلات أخرى:

  • سلسلة نصية key1 - المفتاح الأول المراد تحديثه
  • سلسلة نصية value1 - القيمة الجديدة للمفتاح key1
  • سلسلة نصية key2 - المفتاح الثاني المراد تحديثه
  • سلسلة نصية value2 - القيمة الجديدة للمفتاح key2

أنشئ مصفوفة ترابطية من إدخال JSON، ثم:

  1. حدّث القيمة المرتبطة بالمفتاح key1 إلى value1
  2. حدّث القيمة المرتبطة بالمفتاح key2 إلى value2
  3. اطبع القيمة المحدّثة عند المفتاح key1
  4. اطبع القيمة المحدّثة عند المفتاح key2

اطبع كل نتيجة في سطر منفصل.

مثال:

إذا كانت المدخلات هي {"name": "Laptop", "price": 999, "stock": 50}، وprice، و1099، وstock، و45، فيجب أن يكون الناتج:

1099
45

إذا كانت المدخلات هي {"city": "Paris", "country": "France", "population": 2000000}، وcity، وLondon، وcountry، وUK، فيجب أن يكون الناتج:

London
UK

جرّب بنفسك

<?php
// اقرأ إدخال JSON
$jsonInput = trim(fgets(STDIN));

// اقرأ المفاتيح والقيم للتحديث
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));

// حوّل JSON إلى مصفوفة ترابطية
$product = (array)json_decode($jsonInput, true);

// TODO: اكتب الكود الخاص بك أدناه
// 1. حدّث القيمة المرتبطة بـ key1 إلى value1
// 2. حدّث القيمة المرتبطة بـ key2 إلى value2
// 3. اطبع القيم المحدّثة

?>
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم PHP عبر الإنترنت