Menu
Coddy logo textTech

חילוץ באמצעות 'array_slice'

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-PHP של Coddy. שיעור 16 מתוך 68.

הפונקציה array_slice() מאפשרת לך לחלץ חלק ממערך בלי לשנות את המערך המקורי. בניגוד לפונקציות כמו array_pop() או array_shift() שמשנות את מערך המקור, array_slice() יוצרת מערך חדש שמכיל רק את האיברים שציינת.

הפונקציה מקבלת שני פרמטרים עיקריים: ההיסט (מיקום ההתחלה) והאורך (כמה איברים לחלץ):

<?php
$scores = [95, 87, 92, 78, 85, 90, 88];
$topThree = array_slice($scores, 0, 3);
print_r($topThree);  // פלט: Array ( [0] => 95 [1] => 87 [2] => 92 )
print_r($scores);    // המערך המקורי נותר ללא שינוי
?>

הפרמטר offset מציין ל-PHP מאיפה להתחיל לחלץ (0 פירושו האיבר הראשון), ואילו הפרמטר length מציין כמה איברים לקחת. אפשר גם להשתמש בערכים שליליים עבור offset כדי להתחיל לספור מסוף המערך.

הפונקציה הזאת שימושית במיוחד כשצריך לעבוד עם תת-קבוצה של נתונים, למשל להציג רק את הפריטים הראשונים ברשימה גדולה או לחלץ טווח מסוים של רכיבים לעיבוד, תוך שמירה על הנתונים המקוריים שלך ללא שינוי.

challenge icon

אתגר

קל

יתקבלו שלושה קלטים: מערך של מחירי מוצרים בפורמט JSON, מיקום התחלתי (היסט) ומספר הפריטים לחילוץ (אורך). קרא את כל שלושת הקלטים, המר את מחרוזת ה-JSON למערך, השתמש ב-array_slice() כדי לחלץ את החלק המבוקש מהמערך, והדפס את החלק שחולץ באמצעות print_r().

פורמט הקלט: שלוש שורות - השורה הראשונה מכילה מערך JSON של מספרים (לדוגמה: [29.99,15.50,42.00,8.75,33.25]), השורה השנייה מכילה את ההיסט (המיקום ההתחלתי), והשורה השלישית מכילה את האורך (מספר האיברים לחילוץ)

פלט צפוי: החלק שחולץ מהמערך, מוצג באמצעות print_r()

נסו בעצמכם

<?php
// קראו את מערך המחירים בפורמט JSON
$json_input = fgets(STDIN);
$prices = (array)json_decode($json_input, true);

// קראו את ההיסט (מיקום ההתחלה)
$offset = intval(fgets(STDIN));

// קראו את האורך (מספר הרכיבים שיש לחלץ)
$length = intval(fgets(STDIN));

// TODO: כתבו את הקוד שלכם למטה כדי לחלץ את המקטע ולהציג אותו בפלט

?>
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

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