Menu
Coddy logo textTech

סיכום - מאגר נתונים של מפתח-ערך

חלק מהיחידה יסודות במסלול ה-PHP של Coddy. שיעור 46 מתוך 71.

challenge icon

אתגר

קל

קרא שורת קלט שמכילה אובייקט JSON המייצג פרטי איש קשר (למשל, {"name": "Alice", "phone": "555-1234"}).

לאחר מכן קרא את הקלטים הבאים:

  • מחרוזת keyToCheck — מפתח שיש לבדוק אם הוא קיים
  • מחרוזת keyToModify — מפתח קיים שיש לעדכן
  • מחרוזת newValue — הערך החדש עבור keyToModify
  • מחרוזת newKey — מפתח חדש להוספה
  • מחרוזת newKeyValue — הערך עבור newKey

צור מערך אסוציאטיבי מקלט ה-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 קיים והדפיסו את הטקסט המדויק מההוראות או את הטקסט המדויק מההוראות
// 2. שנו את הערך ב-keyToModify ל-newValue
// 3. הוסיפו זוג מפתח-ערך חדש באמצעות newKey ו-newKeyValue
// 4. הדפיסו את הערך המעודכן ב-keyToModify
// 5. הדפיסו את הערך ב-newKey

?>

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: קומפיילר PHP אונליין