เริ่มต้นเขียนโปรแกรม
Try Catch คืออะไร?
Try Catch สำหรับ PHP คือ สิ่งที่ตรวจสอบ และดักจับการทำงานของ Script บางอย่าง เพื่อไม่ให้การทำงาน เกิด Bugs หรือ การทำงานของโปรแกรมผิดพลาด ถ้าการทำงานผิดพลาดแล้วส่งผลให้ Script ทำการคำนวนหรือ ประมวลผลต่อไป มันก็จะเป็นสิ่งที่ไม่ค่อยดีกับโปรแกรมนั้นเลย
การเขียน Methods ที่ดี หรือการเขียนที่ไม่ต้องทำให้ ผู้ร่วมงานได้ปวดหัวกันมากคือ การใช้ Try Catch เพื่อบอก Debug หรือข้อผิดพลาดในการประมวลผลต่างๆ ประโยชน์ของ Try Catch นั้น เพื่อป้องกันความผิดพลาดอย่างร้ายแรงเลยก็ว่าได้ ลองมาดูตัวอย่างการใช้งาน Try Catch กันเลย
<?php function _alert($x=null) { if(isset($x)){ return '<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-wp-preserve="%3Cscript%3Ealert(%5C''.%24x.'%5C')%3B%3C%2Fscript%3E" data-mce-resize="false" data-mce-placeholder="1" class="mce-object" width="20" height="20" alt="<script>" title="<script>" />'; }else{ throw new Exception('variable x is Null'); } } try { echo _alert(); echo _alert('Hello World'); } catch (Exception $e) { echo 'Caught exception: ', $e->getMessage(), "\n"; } ?>
จะเห็นได้ว่า มีข้อความ variable x is Null ขึ้นแล้วโปรแกรมจะหยุดการทำงานทันที โปรแกรม จะไม่ทำการ Alert ข้อความ Hello World ออกมาให้ ฉะนั้น ประโยชน์ของการใช้ Try Catch นั้น เป็นสิ่งที่ดีสำหรับผู้ใช้งานเริ่มต้นที่ควร เขียนและง่ายต่อการ ตรวจ Debug งาน อาจประยุกต์ใช้สำหรับ การทำงาน หรือ Methos ที่สำคัญๆ
ข้อสังเกต สำหรับ บรรทัดที่ 6 throw new Exception(‘variable x is Null’); เราสามารถทำการเปลี่ยน String ใน () วงเล็บ เป็นอะไรก็ได้ โดยอาจใส่ เช่น TRO-L6 ถ้ามี Error นี้เกิดขึ้นจริง เราก็จะได้รู้ว่า เขียนเป็นแบบ Try Catch บรรทัดที่ 6 หรืออาจทำเอกสารอ้างอิงว่า รหัส TROL6 นั้นหมายถึงอะไรก็เป็นได้ (ใช้สำหรับการทำ API)
เป็นยังไงกันบ้างค่ะ? สำหรับ บทเรียน “เริ่มต้นเขียนโปรแกรม chapter 4” หากท่านใดลองใช้และประยุกต์ในการทำงาน จะเป็นผลดีมากสำหรับการทำงานค่ะ