הוספת אירוע חדש
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-PHP של Coddy. שיעור 60 מתוך 68.
אתגר
קלתקבלו שתי קלטים: מחרוזת JSON המייצגת את מערך האירועים הקיים מהשיעור הקודם, ושלושה ערכים בשורה השנייה, המופרדים ברווחים, שמייצגים את שם האירוע החדש, התאריך והמיקום שלו.
הקלט הראשון יהיה מחרוזת JSON בפורמט הזה: [{"name":"Team Meeting","date":"2024-04-15","location":"Office"},{"name":"Conference","date":"2024-05-20","location":"Convention Center"}]
הקלט השני יהיה שלושה ערכים המופרדים ברווחים בפורמט הזה: Workshop 2024-06-10 Library
קראו את שני הקלטים. פענחו את מחרוזת ה-JSON למערך אירועים. לאחר מכן, נתחו את הקלט השני כדי לחלץ את שם האירוע, התאריך והמיקום. צרו מערך אסוציאטיבי חדש עבור האירוע הזה, עם המפתחות "name", "date" ו-"location", והוסיפו אותו למערך האירועים באמצעות array_push().
לאחר הוספת האירוע החדש, עברו על כל האירועים במערך והדפיסו כל אחד מהם בפורמט הבא:
Event: [name] on [date] at [location]
הדפיסו כל אירוע בשורה נפרדת, לפי סדר הופעתם במערך.
פורמט הקלט:
- שורה ראשונה: מחרוזת JSON המייצגת את מערך האירועים הקיים
- שורה שנייה: שלושה ערכים המופרדים ברווחים, המייצגים את שם האירוע החדש, התאריך והמיקום שלו (לדוגמה:
Workshop 2024-06-10 Library)
הפלט הצפוי: כל אירוע (כולל האירוע החדש שנוסף) יודפס בשורה נפרדת בפורמט: Event: [name] on [date] at [location]
נסו בעצמכם
<?php
// קראו את מחרוזת ה-JSON מהקלט הראשון
$jsonInput = trim(fgets(STDIN));
// קראו את פרטי האירוע החדש מהקלט השני
$newEventInput = trim(fgets(STDIN));
// פענחו את מחרוזת ה-JSON למערך
$events = (array)json_decode($jsonInput, true);
// נתחו את פרטי האירוע החדש (name, date, location)
list($name, $date, $location) = explode(' ', $newEventInput);
// TODO: כתבו את הקוד שלכם למטה
// צרו מערך חדש לאירוע והוסיפו אותו למערך האירועים באמצעות array_push()
// לאחר מכן עברו על כל האירועים והדפיסו אותם בפורמט הנדרש
?>כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1פונקציות מתקדמות
פונקציות אנונימיותסגירות ו-'use'פונקציות חץפונקציות callbackשימוש ב-'call_user_func'פונקציות משתנותהעברה באמצעות הפניהפונקציות רקורסיביותסיכום: מגוון פונקציות4מערכים רב־ממדיים
יצירת מערך דו־ממדיגישה לאיברי מערך דו־ממדישינוי איברי מערך דו־ממדימעבר באמצעות לולאות מקוננותמערכים אסוציאטיביים דו־ממדייםסיכום: תרגיל רשת פשוטה2מניפולציות מתקדמות במערכים
הוספה באמצעות 'array_push'הסרה באמצעות 'array_pop'הוספה לתחילת המערך באמצעות 'array_unshift'הסרה מתחילת המערך באמצעות 'array_shift'מיזוג מערכים ממוספריםמיזוג מערכים אסוציאטיבייםחילוץ באמצעות 'array_slice'בדיקת ערכים באמצעות 'in_array'חיפוש מפתחות באמצעות 'array_search'סיכום: תרגיל רשימת השמעה3מיון מערכים
מיון מערכים עם אינדקסים בסדר עולהמיון מערכים עם אינדקסים בסדר יורדמיון מערכים אסוציאטיביים לפי ערךמיון מערכים אסוציאטיביים לפי מפתחמיון בסדר טבעימיון מותאם אישית באמצעות 'usort'סיכום: מיון טבלת מובילים6פונקציות מערך מסדר גבוה
התמרה באמצעות 'array_map''array_map' עם פונקציה מותאמת אישיתסינון באמצעות 'array_filter''array_filter' עם פונקציה מותאמת אישיתצמצום באמצעות 'array_reduce'מעבר על מערך באמצעות 'array_walk'סיכום: עיבוד נתונים9מתזמן אירועים
נתוני אירועיםהוספת אירוע חדשתרגלו בעצמכם: קומפיילר PHP אונליין