Timestamp ใน Laravel

Founder, MyCoding.Academy
วิศวกรไฟฟ้าและโทรคมนาที่หลงไหลการเขียนโปรแกรม เลยได้ทำงานประจำช่วงหนึ่งทางด้านการพัฒนาซอฟต์แวร์ ปัจจุบันก็ยังทำงานเป็นฟรีแลนซ์ทางด้านการเขียนโปรแกรมอยู่นะครับ

การแสดงผลวันที่ และเวลา รวมทั้งการจัดเก็บข้อมูลมักจะเป็นปัญหาที่ทำให้โปรแกรมเมอร์ปวดหัวเสมอ เมื่อมีผู้ใช้งานอยู่ในหลาย Time zone ผมเองตอนที่ใช้ Yii2 Framework ก็ได้รับคำแนะนำให้เก็บข้อมูลเป็น timestamp หรือเก็บ Unix Timestamp แล้วค่อยนำมาแปลงเป็นรูปแบบต่างๆ อีกที แต่ใน Laravel ดูจะง่ายกว่านั้นเพราะเราสามารถเป็นเก็บ MySQL timestamp แล้วตัว Laravel มันจะแปลงวให้อยู่ในรูปของ Carbon instance ก็สะดวกดีนะครับ

แล้ว Carbon มันคืออะไรอีกล่ะ Carbon ก็คือ PHP library ที่สืบทอดการจัดการเวลามาจาก PHP อีกทีนึงเพิ่มลูกเล่นให้เราได้มากมาย สามารถดูรายละเอียดการใช้งานได้ที่นี่ครับ และตัวนี้มาพร้อมกับ Laravel Framework ครับ เนื่องจากฟิลด์ created_at และ updated_at ของ Eloquent จะถูกแปลง (Type cast) ให้เป็น Carbon object นั่นเองครับ 

ดังนั้นการจัดการเกี่ยวกับวันที่และเวลาก็สามารถดูได้จากเอกสารของ Carbon ได้นะครับ ลดเวลาในการเขียนโค้ดได้พอสมควรทีเดียว