מדריך PHP: הגדרות php.ini
וובמטריקס, התוכנה שעליה אנו לומדים, משתמשת בשרת מבוסס חלונות: IIS להרצה של הסקריפטים שלנו. אנו נכנס אל ה-iis באמצעות התפריט:
יפתח לנו תפריט ה-iis, שם נאתר את החלק המוקדש ל-PHP
נלחץ עליו ונקבל את החלון הבא:
זה החלון של מנהל ה-PHP. שם נוכל לצפות בקובץ phpinfo – מדובר בקובץ המכיל את כל המשתנים שיש בהגדרות של השפה בשרת. אפשר להגיע ל-phpinfo דרך מנהל הגדרות ה-PHP או להדפיס את השורה הבאה בקובץ כלשהו ולהריץ אותו:
<?php print phpinfo();
תופיע לנו טבלה ארוכה כאורך הגלות המכילה את כל משתני השפה. בואו ונסתכל על ההגדרות השונות – כולן מעניינות ויכול להיות שיהיו רלוונטיות בחלק מהאפליקציות שלכם. בואו ונסתכל על הגדרה אחת ספציפית – memory_limit:
זו כמות הזכרון שמוקצה להרצת הסקריפט, לפעמים אנו צריכים לשנות את זה ואת זה אנו עושים באמצעות php.ini. נחזור למנהל ה-PHP ונלחץ על configuration file:
ייפתח לנו notepad המכיל את php.ini – הקובץ המכיל את כל ההגדרות של PHP, שם נמצא גם את ההגדרה של כמות הזכרון המוקצה לנו:
נשנה אותה ל-256 ונשמור. נרסט את שרת ה-IIS:
אם נבדוק את ה-phpinfo, אנו נראה שהערך השתנה, כך בנוגע כמעט לכל הגדרה. Php.ini מאפשר לנו שליטה מלאה על איך שה-PHP שלנו מתנהג.
ניתן לשנות חלק מתכונות ה-php.ini באופן זמני באמצעות פונקצית ini_set. כך למשל
<?php ini_set('memory_limit', '320M'); print phpinfo();
ואם נסתכל על ה-phpinfo אנו נראה שה-local שונה מה-master במקרה הזה:
הנה הרשימה של כל התכונות שניתן לשנות באמצעות פונקצית ini_set.
שגיאות PHP
הרבה פעמים אנו צריכים ליצור הודעות שגיאה משלנו כאשר משהו משתבש. יצירת הודעת השגיאה הזו היא קלה מאד, ראשית אנו יוצרים פונקציה שמקבלת שישה ארגומנטים (אפשר רק את שני הראשונים).
ארגומנט ראשון: רמת השגיאה, כאשר יש מספר רמות: אזהרה: כמו למשל הודעה, אזהרה והודעת משתמש.
ארגומנט שני: תוכן השגיאה.
ארגומנט שלישי: הקובץ שבו נעשתה השגיאה.
ארגומנט רביעי: מספר השורה שבה התרחשה השגיאה.
ארגומנט חמישי: הקונטקסט (אם קיים) של השגיאה.
הנה דוגמא לפונקציה כזו:
<?php function myError($error_level, $error_message, $error_file, $error_line, $error_context) { print "<strong>Error:</strong> <br />Error level: $error_level <br />Error message: $error_message <br />Error file: $error_file <br />Error line: $error_line <br />Error context: $error_context "; }
כפי שאנו רואים, שם הפונקציה הוא ארביטרארי לגמרי.
עכשיו יש לרשום את הפונקציה כפונקציה שתרוץ כאשר יש שגיאה:
set_error_handler("myError");
זה די פשוט, פשוט שימוש ב-set_error_handler ושם הפונקציה.
אפשר לבדוק את כל הסיפור באמצעות הקוד הבא:
<?php function myError($error_level, $error_message, $error_file, $error_line, $error_context) { print "<strong>Error:</strong> <br />Error level: $error_level <br />Error message: $error_message <br />Error file: $error_file <br />Error line: $error_line <br />Error context: $error_context "; } set_error_handler("myError"); echo($test);
וככה זה נראה:
אפשר ליצור הודעת שגיאה משלכם בקוד באופן הבא:
trigger_error('our error message!');
כאשר ברגע שאתם מריצים את trigger_error בעצם נוצרת שגיאה בקוד שהפונקציה שלכם, אם יצרתם אותה, תתריע עליה.
תגובות בפייסבוק