הוספה לתחילת המערך באמצעות 'array_unshift'
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-PHP של Coddy. שיעור 12 מתוך 68.
בעוד ש־array_push() מוסיפה איברים לסוף מערך, הפונקציה array_unshift() עושה את ההפך. היא מוסיפה איבר אחד או יותר לתחילת מערך. הפונקציה משנה ישירות את המערך המקורי ומחזירה את האורך החדש של המערך.
הנה התחביר הבסיסי:
<?php
$tasks = ["buy groceries", "do laundry"];
array_unshift($tasks, "urgent meeting");
print_r($tasks); // פלט: Array ( [0] => urgent meeting [1] => buy groceries [2] => do laundry )
?>שימו לב שהאיבר החדש הופך לאינדקס 0, וכל האיברים הקיימים עוברים לאינדקסים גבוהים יותר. מספור מחדש זה מתבצע אוטומטית: array_unshift() מעדכנת את כל המפתחות המספריים כדי לשמור על הרצף התקין.
אפשר גם להוסיף כמה איברים בבת אחת:
<?php
$priorities = ["medium task"];
array_unshift($priorities, "high priority", "critical task");
print_r($priorities); // פלט: Array ( [0] => high priority [1] => critical task [2] => medium task )
?>הפונקציה הזו שימושית במיוחד כשצריך לתעדף פריטים ברשימה, למשל להוסיף משימות דחופות לראש רשימת מטלות או להכניס פריטים בעדיפות גבוהה לחזית של תור.
אתגר
קלתקבלו שתי קלטים: מערך ראשוני של התראות בפורמט JSON והתראה דחופה חדשה להוספה. קראו את שני הקלטים, המירו את מחרוזת ה-JSON למערך, השתמשו ב-array_unshift() כדי להוסיף את ההתראה הדחופה לתחילת המערך, והדפיסו את המערך הסופי באמצעות print_r().
פורמט הקלט: שתי שורות - השורה הראשונה מכילה מערך JSON (לדוגמה: ["meeting reminder","email received"]), והשורה השנייה מכילה את ההתראה הדחופה להוספה
הפלט הצפוי: המערך לאחר הוספת ההתראה הדחופה בתחילתו, מוצג באמצעות print_r()
נסו בעצמכם
<?php
// קראו את מערך ההתראות בפורמט JSON
$jsonInput = fgets(STDIN);
$notifications = (array)json_decode($jsonInput, true);
// קראו את ההתראה הדחופה שיש להוסיף
$urgentNotification = trim(fgets(STDIN));
// TODO: כתבו את הקוד שלכם למטה כדי להוסיף את ההתראה הדחופה לתחילת המערך
// הדפיסו את המערך הסופי
print_r($notifications);
?>השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
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 אונליין