נגישות       נגישות
שינוי גודל טקסט:
א א א
שינוי צבעי האתר:
? מקשי קיצור:

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

הפעלת מקשי הקיצור תלויה בדפדפן שבו אתם משתמשים.

Internet Explorer, Chrome ובגרסאות ישנות של Firefox: לחצו על מקש Alt ועל מקש המספר או האות על-פי הרשימה. ב Firefox 3 ומעלה: לחצו על המקשים Alt + Shift + המספר או האות.

S - עבור לתוכן הדף
L - חיפוש
1- עמוד הבית
2 - פרוייקטים
3 - מדריכים
4 - אודות
5 - צרו קשר
6 - הצהרת נגישות
 

פונקציות PHP

מחבר:
בתאריך:

 

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

 

פונקציה ראשונה של PHP

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

 
   function name(){
              // קוד הפונקציה
   }
 

 

לדוגמה, הפונקציה הבאה, שמדפיסה "Shalom" למסך.

function hello(){
     echo " Shalom ";
}

 

קריאה לפונקציה

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

hello();

וכתוצאה מכך יודפס Shalom על המסך.

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

 

פונקציות עם ארגומנט

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

function hello($name){
     echo "Shalom " . $name;
}

 

עכשיו כשאנחנו קוראים לפונקציה אנחנו צריכים להוסיף את הארגומנט:

hello("Mor");

ידפיס למסך:

Shalom Mor

 

ונוכל לקרוא לקוד שוב עם שם אחר:

hello("Ido");

ידפיס למסך:

Shalom Ido

 

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

hello();

ומיד תופיע הודעת שגיאה מכוערת, והסקריפט ייתקע:

Warning: Missing argument 1 for hello()

 

פונקציות עם ארגומנט וערך ברירת מחדל

כדי להימנע ממצב שלא העברנו את הארגומנט, מקובל מאוד להוסיף ערך ברירת מחדל. לדוגמה:

function hello($name = "X"){
     echo "Shalom " . $name;
}

 

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

hello();

והתוצאה תהיה:

Shalom x

 

באותה מידה שניתן להעביר X או שם אחר שישמש כברירת מחדל אפשר להעביר מחרוזת ריקה. לדוגמה:

function hello($name = ""){
     echo "Shalom " . $name;
}

 

ועכשיו כשנקרא לפונקציה:

hello();

תודפס למסך ההודעה:

Shalom

כך גם חסכנו לעצמנו הודעת שגיאה מעצבנת וגם נשארנו מנומסים.

 

פונקציות עם יותר  מארגומנט אחד

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

- שם באמצעות הארגומנט name$.

- ברכה באמצעות הארגומנט $bless.

 

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

function hello($name = "", $bless=""){
     echo "Shalom " . $name . " and " .$bless ;
}

 

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

hello("Tamar" , "have a good day");

 

והתוצאה:

Shalom Tamar and have a good day

 

פונקציות שמחזירות ערך

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

function hello($name = "X"){
     return "Shalom " . $name;
}

 

נקרא לפונקציה:

hello ("Yossi");

 

והתוצאה היא שדבר לא יודפס למסך, מפני שהשתמשנו ב-return ולא ב-echo, וכדי שתאמינו לי שמשהו אכן קורה, נעשה echo על הקריאה לפונקציה, באופן הבא:

echo hello ("Yossi");

 

ועכשיו יודפס למסך:

Shalom Yossi

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

כל מדריכי ה-PHP

 

 

הוסף תגובה חדשה

 

= 5 + 5