- ให้ Output ออกไปที่ Standard Output หรือก็คือที่หน้าจอนั่นเอง
- ให้ Output ออกไปที่ไฟล์ php_errors.log
- เริ่มแรกเลยนะครับต้องเซ็ตค่าตัวแปร log_errors = On ก่อนซึ่งตวแปรตัวนี้ทำหน้าที่ในการแสดง error ทั้งหมดออกทางหน้าจอ หรือทาง log file.
ทีนี้เรามาดูกันดีกว่าว่าวิธีทำในแต่ละอย่างนั่นทำอย่างไร เรามาเริ่มกันที่วิธีแรกกันเลยดีกว่า
- ถ้าเราต้องการให้ error ที่เกิดขึ้นแสดงทางหน้าจอ หรือทางเพจที่เราสร้างขึ้นนั่นเราต้องทำการเซ็ต display_errors = On ด้วยโดยปกติเราควจจะเซ็ตค่านี้เป็น On ตลอดเวลาแม้ว่าเราจะน้ำ PHP Code ของเราไปใช้งานหรือ Production ก็ตาม
- ถ้าเราต้องการให้ error ที่เกิดขึ้นแสดงใน log file เราจะต้องทำการเซ็ตค่า error_log = "c:/wamp/logs/php_error.log" ที่นี้พอมี error เกิดขึ้น error นั่นๆ ก็จะไปปรากฎที่ php_error.log file นั่นเอง
ini_set
(
'display_errors'
, TRUE);
เราสามารถวางบรรทัดด้านบนนนี้ไว้บนหัวขอแต่ละ file หรือตรงที่ที่เราจะใช้งานเพียงเท่านี้เองครับ ผลลัพธ์ของมันก็จะเหมือนกับการที่เราเซ็ต display_errors = On ใน php.ini file เลยครับ
วิธีการทดสอบ
เราสามารถที่จะทดสอบได้โดยลองเรียก function ที่ไม่มีอยู่จริงขึ้นมาเช่น
<?php
a_function_not_exist();
?>
เพียงเท่านี้ error ที่บอกว่า function นี้ไม่มีอยู่ก็จะแสดงที่ หน้าจอ และ log file แล้วครับ
ข้อควรระวัง
วิธีการนี้ใช้เพื่อการ Debug source code เท่านั่นนะครับ ไม่สมควรเอาไปใช้ใน Production นะครับเพราะว่าอาจจะเป็นช่องทางหนึ่งที่สามารถถูกใช้ในการ Hack ได้และยังทำให้ Program เราช้าลงนะครับในกรณีที่เราเปิด log file.
อ้างอิง http://www.only10types.com/2011/02/php-logging-on-ubuntu-1004-lucid.html