החזרת ערכים
חלק מהיחידה יסודות במסלול ה-PHP של Coddy. שיעור 63 מתוך 71.
הפונקציות שיצרנו עד כה משתמשות ב־echo כדי להציג פלט ישירות. אבל לעיתים קרובות, רוצים שפונקציה תחשב משהו ותחזיר לך את התוצאה, כדי שתוכל להשתמש בה במקום אחר בקוד שלך. כאן נכנסת לתמונה הוראת return.
הפקודה return מחזירה ערך למקום שממנו נקראה הפונקציה:
<?php
function add($a, $b) {
return $a + $b;
}
$result = add(5, 3);
echo $result;
?>הפעולה הזו פולטת 8. במקום להדפיס את הסכום בתוך הפונקציה, אנחנו מחזירים אותו. הקוד שקורא לפונקציה מקבל את הערך הזה ושומר אותו ב־$result.
החזרת ערכים הופכת פונקציות להרבה יותר ורסטיליות. אפשר להשתמש בערך המוחזר בחישובים, להעביר אותו לפונקציות אחרות או לשמור אותו לשימוש מאוחר יותר:
<?php
function double($num) {
return $num * 2;
}
echo double(5) + double(3);
?>הפעולה הזו מחזירה 16 (10 + 6). כל קריאה ל-double() מחזירה ערך שמשמש בחיבור.
חשוב לדעת דבר אחד: כש-PHP נתקלת במשפט return, הפונקציה נעצרת מיד. קוד שמופיע אחרי return לא יבוצע.
אתגר
קלקרא שתי שורות קלט:
- מספר שמייצג את הבסיס של מלבן (למשל,
5) - מספר שמייצג את הגובה של מלבן (למשל,
3)
צור פונקציה בשם calculateArea שמקבלת שני פרמטרים: $base ו-$height. הפונקציה צריכה להחזיר את שטח המלבן (בסיס × גובה).
קרא לפונקציה עם ערכי הקלט, שמור את הערך המוחזר במשתנה והדפס את התוצאה.
דוגמה 1:
אם ערכי הקלט הם 5 ו-3, הפלט צריך להיות:
15דוגמה 2:
אם ערכי הקלט הם 10 ו-7, הפלט צריך להיות:
70דוגמה 3:
אם ערכי הקלט הם 12 ו-4, הפלט צריך להיות:
48נסו בעצמכם
<?php
// קראו את הקלט
$base = intval(fgets(STDIN));
$height = intval(fgets(STDIN));
// TODO: צרו פונקציה בשם calculateArea שמקבלת את הפרמטרים $base ו-$height
// הפונקציה צריכה להחזיר את השטח (בסיס × גובה)
// TODO: קראו לפונקציה עם ערכי הקלט ושמרו את התוצאה במשתנה
// הדפיסו את התוצאה
echo $result;
?>השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
4אופרטורי השוואה ולוגיקה
אופרטורי השוואהשוויון וזהותאופרטורים לוגיים — חלק 1אופרטורים לוגיים — חלק 2סיכום — לוגיקה פשוטה2משתנים וסוגי נתונים
מספריםמחרוזות ומירכאותערכים בוליאנייםכללי מתן שמותסיכום – אתחול משתניםמשתנים ריקיםשרשור מחרוזותקבלת קלט מהמשתמשהמרה לסוגים שונים3אופרטורים בסיסיים
אופרטורים אריתמטייםאופרטור מודולואופרטור חזקההשמה משולבתהגדלה והקטנהקדימות אופרטוריםסיכום — חישובים פשוטיםאופרטורים למחרוזותתרגלו בעצמכם: קומפיילר PHP אונליין