Presentation is loading. Please wait.

Presentation is loading. Please wait.

תיכון אהל שם, רמת גן קורס PHP – הרצאת העשרה

Similar presentations


Presentation on theme: "תיכון אהל שם, רמת גן קורס PHP – הרצאת העשרה"— Presentation transcript:

1 תיכון אהל שם, רמת גן קורס PHP – הרצאת העשרה
שגיאות סוגי שגיאות איך מתמודדים עם שגיאות קריאת שגיאות חלק מהזכויות שמורות © דין אריאל 2006 – date(“n”, time()) ניתן להשתמש במצגת זאת לפי רישיון CC בכתובת:

2 רקע כללי מהי שגיאה בכלל? שגיאה היא כאשר קורה משהו לא צפוי במהלך התוכנית. בהמשך נבין איך מבינים שגיאות ומה עושים איתן? דוגמה לשגיאה -

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

4 שגיאות אילו מין שגיאות יש? להלן סוגי השגיאות:
שגיאת פענוח ( = שגיאות תחביר) שגיאות זמן ריצה -> אזהרות -> שגיאות פטאליות התרעות (Notice)

5 על שגיאות שגיאות ב-PHP, השגיאות מופיעות בצורה הבאה:
Error Type, … error message … , in /path/to/file.php on line X מה זה אומר? Error Type -> סוג השגיאה /in/path/to/file.php -> באיזה קובץ התרחשה השגיאה On line X -> באיזו שורה קרתה השגיאה

6 שגיאות שגיאת פענוח איך היא נראית?
שגיאת פענוח מזוהית על ידי כך שכתובה באופן קבוע בצורה זו: Parse error: syntax error, … error message … in /path/to/file.php on line x מה הכוונה? Parse error, syntax error – אומר לכם שיש שגיאה בפענוח הסקריפט שגיאה זו, היא שגיאה פטאלית (מוחלטת), הסקריפט שלכם לא ירוץ כל עוד יש שגיאת תחביר.

7 שגיאות שגיאת פענוח איך נתמודד איתה?!
הדרך לפתרון שגיאות תחביריות הוא קל. דיברנו על כך שהשגיאה גם נותנת לנו את הקובץ והשורה בה התרחשה השגיאה. מה נעשה? ניכנס לקובץ, נרד לשורה בה קרתה השגיאה. סביר להניח שישר נראה מה השגיאה. כדאי במקרה של שגיאה זו להסתכל גם שורה אחת מעל השורה שנתנה לכם.

8 שגיאות שגיאת פענוח מתי היא קורת? דוגמאות למקרים בהן יש שגיאת פיענוח:
<?php $a = ‘b’; // no error $a = “b” // gives an error – forgot a ; at the end $a = count($some_array // gives an error – expecting ) and ; ?>

9 שגיאות שגיאת זמן ריצה איך היא נראית?
שגיאת זמן ריצה מזוהית על ידי כך שכתובה באופן קבוע בצורה זו: [Waring / Fatal Error]: … error message … in /path/to/file.php on line x מה הכוונה? Waring / Fatal Error– אומר לכם שיש שגיאה בזמן ריצת הסקריפט ישנן שני סוגים של שגיאות זמן ריצה, שגיאות פטאליות (מוחלטות) ואזהרות.

10 שגיאות שגיאת פענוח -> שגיאה פטאלית
איך נתמודד איתה?! איך נזהה אותה?! הדרך לפתרון שגיאות פטאליות לפעמים קל, ולפעמים נמשך זמן רב. איך מוצגת שגיאה זו? Fatal Error: … Error Mesage … in /path/to/file.php on line X מה הכוונה? – Fatal Error -> אומר לכם שקרתה שגיאה פטאלית בזמן ריצת הסקריפט. הערה: כאשר קורת שגיאה פטאלית, הסקריפט נעצר באמצע.

11 שגיאות שגיאת פענוח מתי היא קורת? דוגמאות למקרים בהן יש שגיאת פטאליות:
<?php $a = non_existing_function(); // gives an error – called a non existing function ?>

12 שגיאות שגיאת פענוח -> אזהרה איך נתמודד איתה?! איך נזהה אותה?!
הדרך לפתרון אזהרות לפעמים קל, ולפעמים נמשך זמן רב. איך מוצגת שגיאה זו? Warning: … Error Mesage … in /path/to/file.php on line X מה הכוונה? – Warning -> מזהיר אתכם לגבי אירוע כלשהו בסקריפט. הערה: כאשר אתם מוזהרים, הסקריפט רק ידפיס אזהרה, וימשיך לרוץ. ניתן "להשתיק" הצגת אזהרה, על ידי כתיבת לפני הפעולה שממנה נשלחה האזהרה, אמנם זה מאוד לא מומלץ, ולא אלגנטי.

13 שגיאות שגיאת פענוח מתי היא קורת? דוגמאות למקרים בהן יש שגיאת פטאליות:
<?php $a = count(); // gives an error – you didn’t give an argument to count() ?>

14 שגיאות שגיאת פענוח מתי היא קורת? דוגמאות למקרים בהן יש שגיאת פטאליות:
<?php $a = count(); // gives an error – you didn’t give an argument to count() ?>

15 שגיאות שגיאת פענוח מתי היא קורת? דוגמאות למקרים בהן יש שגיאת פטאליות:
<?php $a = count(); // gives an error – you didn’t give an argument to count() ?>

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

17 שגיאות Notice איך נתמודד איתה?! איך נזהה אותה?!
Notice: … Mesage … in /path/to/file.php on line X מה הכוונה? – Notice -> מודיע לכם על משהו שקרה בסקריפט.

18 שגיאות Notice איך מגדירים שהסקריפט ישים לב לדקויות?
באמצעות הפונקציה -> error_reporting(LEVEL); באמצעות פונקציה זו, אתם מגדירים מה רמת ההסתכלות על שגיאות במהלך הסקריפט. במקום LEVEL תרשם רמת השגיאה.

19 שגיאות Notice אומרת לתוכנית להתייחס רק לשגיאות פטאליות E_ERROR
אילו רמות שגיאה יש? אומרת לתוכנית להתייחס רק לשגיאות פטאליות E_ERROR אומרת לתוכנית להציג רק אזהרות E_WARNING לא להציג שום שגיאה, חוץ משגיאות תחביר E_PARSE להציג רק התרעות (Notice) E_NOTICE מציג את רוב השגיאות E_STRICT מציג כל הודעה אפשרית E_ALL אל תציג שום שגיאה

20 השלמה - פונקציה חדשה – exit
מה היא מבצעת? התשובה בגוף השם – יוצאת מהתוכנית. כאשר קוראים לפונקציה exit, התוכנית מפסיקה לרוץ. דוגמאות לשימוש: <?php exit; // יוצא מהתוכנית exit(“Bye Bye”); // שולח פלט ויוצא מהתוכנית if($someVar == 5) { exit; // exit if $someVar is 5 } ?>


Download ppt "תיכון אהל שם, רמת גן קורס PHP – הרצאת העשרה"

Similar presentations


Ads by Google