הסרה באמצעות 'array_pop'
חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-PHP של Coddy. שיעור 11 מתוך 68.
הפונקציה array_pop() מסירה את האיבר האחרון ממערך ומחזירה את הערך שהוסר. בניגוד ל־array_push(), שמוסיפה איברים, הפונקציה הזו מקצרת את המערך שלך באיבר אחד בכל פעם שמשתמשים בה.
כך זה עובד:
<?php
$tasks = ["wash dishes", "do laundry", "buy groceries"];
$completedTask = array_pop($tasks);
echo $completedTask; // פלט: buy groceries
print_r($tasks); // פלט: Array ( [0] => wash dishes [1] => do laundry )
?>שימו לב ש־array_pop() גם משנה את המערך המקורי וגם מחזירה את האיבר שהוסר. לכן היא מתאימה במיוחד למצבים שבהם צריך לעבד פריטים מסוף הרשימה, כמו השלמת המשימה האחרונה ברשימת מטלות או הסרת הפריט האחרון שנוסף למחסנית.
אם תנסה להשתמש ב־array_pop() על מערך ריק, היא תחזיר null מבלי לגרום לשגיאה. הפונקציה הזו שימושית במיוחד כשעובדים עם מערכים כמחסניות, שבהן מוסיפים פריטים לסוף ומסירים אותם מהסוף בתבנית של "נכנס אחרון, יוצא ראשון".
אתגר
קליתקבלו שני קלטים: מערך התחלתי של משימות בפורמט JSON ומספר המציין כמה משימות להשלים. קרא את שני הקלטים, המר את מחרוזת ה-JSON למערך, השתמש ב-array_pop() מספר פעמים כמספר המשימות שצוינו כדי להסיר משימות שהושלמו מהסוף, והדפס את המערך הסופי באמצעות print_r().
פורמט הקלט: שתי שורות - השורה הראשונה מכילה מערך JSON (לדוגמה: ["task1","task2","task3"]), השורה השנייה מכילה את מספר המשימות להשלמה (מספר)
הפלט הצפוי: המערך לאחר הסרת המשימות שהושלמו, מוצג באמצעות print_r()
נסו בעצמכם
<?php
// קראו את מערך ה-JSON מהקלט
$jsonInput = fgets(STDIN);
$tasks = (array)json_decode($jsonInput, true);
// קראו את מספר המשימות שיש להשלים
$numToComplete = intval(fgets(STDIN));
// TODO: כתבו את הקוד שלכם למטה
// השתמשו ב-array_pop() כדי להסיר את מספר המשימות שצוין
// הציגו את המערך הסופי
print_r($tasks);
?>השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
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 אונליין