יצירת פונקציות ב-PHP - תיכנות ובניית אתרים בעזרת PHP

מדור תיכנות ובניית אתרים בעזרת PHP

הוסף למועדפים | הפוך לאתר הבית
מדור ברשת



רוצה לעזור?

אם אתה מעוניין לעזור לנו בפיתוח האתר, באפשרותך לשלוח מאמר\מדריך אל רשימות המאמרים שלנו, תודה על שיתוף הפעולה, הנהלת האתר.


אתרים מומלצים

מעוניינים לשחק משחקים ברשת , משחקי פלאש ועוד? בקרו באתרי משחקים הבאים: גיימאקסטרה משחקים או בבלוג המשחקים: בלוג משחקים

דף ראשי -> תכנות ובניית אתרים -> תיכנות ובניית אתרים בעזרת PHP -> יצירת פונקציות ב-PHP
יצירת פונקציות ב-PHP

הגדרת פונקציות ב-PHP

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

כך נראת פונקציה בצורתה הבסיסית:


קוד

<?php

function name($var)
{

//php function code

}
?>


אז מה הולך פה?
אחרי הגדרה של התחלת פונקציה function בא שם הפונקציה (name במקרה הזה), אחר כך באים סוגרים עגולים שבתוכם אנו לוקחים את המידע שמועבר לפונקציה.
אחר כך פותחים סוגריים מסולסלים ושם כותבים את הקוד.

לרוב כותבים בסוף הפונקציה


קוד

return $var;



שזה בעצם מחזיר את המידע שעבר בפונקציה.

שימושים לפונקציה

נגיד לדוגמא יש לנו את הפונקציה הבאה:


קוד

<?php
function check_number($number)
{

if($number < 0)
{
$msg = "המספר שלילי.";
}
elseif($number > 0)
{
$msg = "המספר חיובי.";
}
else
{
$msg = "המספר שווה לאפס.";
}

return $msg;

}

?>




הפונקציה הזו בעצם מקבלת מספר כלשהו ועושה 3 בדיקות, בבדיקה הראשונה אנו בודקים האם המספר שהפונקציה קיבלה (number$) קטן מאפס, אם המספר קטן מאפס אז המסר (msg$) שנחזיר מהפונקציה יהיה "המספר שלילי".
בבדיקה השניה בודקים אם המספר (number$) גדול מאפס, ואם הוא גדול מאפס אז המסר (msg$) שמוחזר הוא "המספר חיובי".
הבדיקה השלישית פשוט אומרת במקרה שהמספר שהוכנס לא קטן מאפס ולא גדול מאפס - אז הוא אפס.

תרגום הפונקציה לעיברית פשוטה:


קוד

<?php
התחל פונקציה בדיקת_מספר ($מספר)
{

אם $מספר קטן יותר מאפס
{
$מסר = "המספר שלילי."
}
אחרת אם $מספר גדול יותר מאפס
{
$מסר = "המספר חיובי."
}
אחרת
{
$מסר = "המספר שווה לאפס."
}

החזר $מסר

}

?>



כמובן, שבתרגום לעיברית (שאגב נודע רק כדי לעזור לכם להבין - לא באמת תכתוב פונקציה בעיברית) החסרתי את הנקודה פסיק ( ; ) שאמור לסגור פקודה.


איך אפשר להשתמש באמת בפונקציה הזו?

פשוט מאוד, ככה:


קוד

<?php

// דרך ראשונה

echo check_number("5657"); //output: "המספר חיובי."

// דרך שנייה

echo check_number("-10"); //output: "המספר שלילי."

// אפשר גם לעשות כך:

$var = check_number("0");

echo $var; //output: "המספר שווה לאפס."

?>


מה שעשינו פה בעצם קראנו לפונקציה עצמה שיצרנו (check_number) והכנסנו לה מספר (בין סוגריים - זה חשוב) וה-output (פלט - שזה תוצאה) יצא "המספר חיובי.

בפעם השניה, יצא לנו שהמספר שלילי.

בפעם השלישית שקראנו לפונקציה, הכנסנו את התוצאה של הפונקציה לתוך משתנה בשם var$ ואז הדפסנו אותו בעזרת הפונקציה (פקודה) echo.

כל הדרכים שהוצגו למעלה נכונות.



תזכורת: כאשר כותבים 2 סלאשים ( // ) ואז כותבים משהו, זה נקרא "הערה בקוד" וזה רק כדי לארגן את הקוד ולהסביר לעצמכן או למישהו אחר שיקרא את הקוד - מה עשיתם.

דוגמאות נוספות לפונקציות

דוגמא יעילה היא ליצור פונקציה תזוזה (move):


קוד

function move ($moveto,$time)
{
echo"";
}



הפונקציה הזו מקבלת 2 פרמטרים:
moveto$ - לאיזה עמוד\אתר לעבור.
time$ - תוך כמה זמן לעבור לעמוד\אתר.

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

כדי להשתמש בפונקציה שהצגתי למעלה אפשר לעשות כך:


קוד

move("http://www.war-army.com","5");

echo "אתה מועבר אוטומטית תוך 5 שניות אל האתר וואר-ארמי.קום.";




חשוב שהפרמטרים יכנסו אחד אחרי השני על פי הסדר שהפונקציה מקבלת אותם.

זאת אומרת בפונקציה הזו הזמן בשניות שיקח לדף לעבור לאתר\דף אחר - חייב להיות הפרמטר השני(בפונקציה הזו חייבים להכניס קודם את המיקום של הדף שאליו אנו עוברים ולאחר מכן את הזמן בשניות).

בקוד דוגמא של הפונקציה השתמשנו גם בפונקציה echo שמדפיסה הודעה למשתמש.
דפים נוספים בקטגוריה תיכנות ובניית אתרים בעזרת PHP
קבלת נתונים מטפסים ואבטחה
ניווט אתר בעזרת include ו-switch ואבטחה
שימוש ב- sessions
עיזרו לנו
אהבת את המדריך? הצבע עבורנו וקדם את האתר שלנו!