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

ملخص - مخزن بيانات (مفتاح-قيمة)

جزء من قسم Fundamentals في رحلة PHP على Coddy — الدرس 46 من 71.

challenge icon

التحدي

سهل

اقرأ سطراً من المدخلات يحتوي على كائن JSON يمثل معلومات جهة اتصال (على سبيل المثال، {"name": "Alice", "phone": "555-1234"}).

ثم اقرأ المدخلات التالية:

  • سلسلة نصية keyToCheck - مفتاح للتحقق مما إذا كان موجوداً
  • سلسلة نصية keyToModify - مفتاح موجود لتحديثه
  • سلسلة نصية newValue - القيمة الجديدة لـ keyToModify
  • سلسلة نصية newKey - مفتاح جديد لإضافته
  • سلسلة نصية newKeyValue - القيمة لـ newKey

أنشئ مصفوفة ترابطية (associative array) من مدخل JSON، ثم قم بإجراء العمليات التالية:

  1. تحقق مما إذا كان keyToCheck موجوداً. اطبع Found إذا كان موجوداً، وإلا اطبع Not found.
  2. قم بتعديل القيمة عند keyToModify إلى newValue.
  3. أضف زوج مفتاح-قيمة جديداً باستخدام newKey و newKeyValue.
  4. اطبع القيمة المحدثة عند keyToModify.
  5. اطبع القيمة عند newKey.

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

مثال:

إذا كانت المدخلات هي {"name": "Alice", "phone": "555-1234"}، و email، و name، و Bob، و city، و Paris، فيجب أن يكون المخرج:

Not found
Bob
Paris

إذا كانت المدخلات هي {"product": "Laptop", "price": 999}، و price، و product، و Tablet، و stock، و 25، فيجب أن يكون المخرج:

Found
Tablet
25

جرّب بنفسك

<?php
// قراءة مدخلات JSON وتحويلها إلى مصفوفة ترابطية
$jsonInput = trim(fgets(STDIN));
$contact = (array)json_decode($jsonInput, true);

// قراءة المدخلات الأخرى
$keyToCheck = trim(fgets(STDIN));
$keyToModify = trim(fgets(STDIN));
$newValue = trim(fgets(STDIN));
$newKey = trim(fgets(STDIN));
$newKeyValue = trim(fgets(STDIN));

// TODO: اكتب الكود الخاص بك أدناه
// 1. تحقق مما إذا كان keyToCheck موجوداً واطبع "Found" أو "Not found"
// 2. تعديل القيمة عند keyToModify إلى newValue
// 3. إضافة زوج مفتاح-قيمة جديد باستخدام newKey و newKeyValue
// 4. طباعة القيمة المحدثة عند keyToModify
// 5. طباعة القيمة عند newKey

?>

جميع دروس Fundamentals