סיכום: תרגיל רשימת השמעה
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-PHP של Coddy. שיעור 19 מתוך 68.
אתגר
קלתקבלו ארבעה קלטים: מערך ראשוני של רשימת השמעה בפורמט JSON, שיר להוספה לסוף, שיר להוספה להתחלה ושם של שיר לחיפוש. קראו את כל ארבעת הקלטים, המירו את מחרוזת JSON למערך, הוסיפו את השיר השני לסוף באמצעות array_push(), הוסיפו את השיר השלישי להתחלה באמצעות array_unshift(), ואז השתמשו ב-array_search() כדי למצוא את המיקום של השיר הרביעי ברשימת ההשמעה ששונתה. הדפיסו את המיקום אם השיר נמצא, או הדפיסו "Song not found" אם הוא לא נמצא ברשימת ההשמעה.
פורמט הקלט: ארבע שורות – בשורה הראשונה מופיע מערך JSON של שירים (לדוגמה: ["Song A","Song B","Song C"]), בשורה השנייה מופיע שם של שיר להוספה לסוף, בשורה השלישית מופיע שם של שיר להוספה להתחלה, ובשורה הרביעית מופיע שם של שיר לחיפוש
פלט צפוי: אינדקס מספרי של מיקום השיר שחיפשתם (החל מ-0) ברשימת ההשמעה ששונתה, או הטקסט "Song not found" אם השיר לא נמצא
נסו בעצמכם
<?php
// קראו את כל ארבעת הקלטים
$playlistJson = trim(fgets(STDIN));
$songToAddEnd = trim(fgets(STDIN));
$songToAddBeginning = trim(fgets(STDIN));
$songToSearch = trim(fgets(STDIN));
// המירו את מחרוזת ה-JSON למערך
$playlist = (array)json_decode($playlistJson, true);
// TODO: כתבו את הקוד שלכם למטה
// 1. הוסיפו את $songToAddEnd לסוף רשימת ההשמעה באמצעות array_push()
// 2. הוסיפו את $songToAddBeginning לתחילת רשימת ההשמעה באמצעות array_unshift()
// 3. חפשו את $songToSearch ברשימת ההשמעה המעודכנת באמצעות array_search()
// 4. שמרו את התוצאה והדפיסו את המיקום או את "Song not found"
// הדפיסו את התוצאה
echo $result;
?>כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1פונקציות מתקדמות
פונקציות אנונימיותסגירות ו-'use'פונקציות חץפונקציות callbackשימוש ב-'call_user_func'פונקציות משתנותהעברה באמצעות הפניהפונקציות רקורסיביותסיכום: מגוון פונקציות4מערכים רב־ממדיים
יצירת מערך דו־ממדיגישה לאיברי מערך דו־ממדישינוי איברי מערך דו־ממדימעבר באמצעות לולאות מקוננותמערכים אסוציאטיביים דו־ממדייםסיכום: תרגיל רשת פשוטה2מניפולציות מתקדמות במערכים
הוספה באמצעות 'array_push'הסרה באמצעות 'array_pop'הוספה לתחילת המערך באמצעות 'array_unshift'הסרה מתחילת המערך באמצעות 'array_shift'מיזוג מערכים ממוספריםמיזוג מערכים אסוציאטיבייםחילוץ באמצעות 'array_slice'בדיקת ערכים באמצעות 'in_array'חיפוש מפתחות באמצעות 'array_search'סיכום: תרגיל רשימת השמעה3מיון מערכים
מיון מערכים עם אינדקסים בסדר עולהמיון מערכים עם אינדקסים בסדר יורדמיון מערכים אסוציאטיביים לפי ערךמיון מערכים אסוציאטיביים לפי מפתחמיון בסדר טבעימיון מותאם אישית באמצעות 'usort'סיכום: מיון טבלת מוביליםתרגלו בעצמכם: קומפיילר PHP אונליין