21 Tutorial สำหรับเรียน Laravel ในปี 2021
29 มกราคม 2564
มาเริ่มต้นปี 2021 ด้วยการฝึกสกิล Laravel เพื่อเพิ่มทักษะความรู้ในการสร้าง Laravel Application ให้ดียิ่งขึ้น เราได้รวบรวม 21 Tutorial ที่น่าสนใจเกี่ยวกับ Laravel นับตั้งแต่เริ่มต้นก้าวแรกจนไปถึงขั้น Advance ในการทำความคุ้นเคยกับ Laravel Famework
เริ่มต้นกับ Laravel Tutorial
Laravel from Scratch
เรียนรู้กับวิธีการใช้งาน Laravel แบบ step by step ใน Laracasts series เรียนรู้การสร้าง web application ด้วย Laravel เริ่มต้นตั้งแต่ขั้นพื้นฐานแล้วค่อย ๆ ลงรายละเอียดลึกขึ้นเรื่อย ๆ โดยอาศัยการใช้งานจากตัวอย่างจริง คุณจะได้รู้จักเครื่องมือที่สำคัญพื้นฐานทั้งหมดใน Laravel ที่จะได้ใช้งาน
สร้าง Laravel Application แบบ Step by Step
ในตัวอย่างนี้ developer จะได้เรียนรู้การสร้างแอพพลิเคชั่น Link directory รวบรวม Link แบบง่าย ๆ เริ่มตั้งแต่การวางโครง Laravel app, ออกแบบ database, การใช้ Blade views, รวมไปถึงเรื่องอื่น ๆ ในการเขียน Laravel application
Laravel Versions
เมื่อนักพัฒนา Laravel เริ่มใช้งานกับ framework อย่างจริงจัง สิ่งหนึ่งที่ควรทำความคุ้นเคยก็คือการรู้ว่า version ใหม่ของ Laravel มีกำหนดออกเมื่อไหร่และจะมีการ update บ่อยแค่ไหน
Laravel Eloquent
Laravel Eloquent คือ Object-Relational Mapper (ORM) ที่ช่วยให้การติดต่อกับฐานข้อมูลเป็นเรื่องง่าย แต่ละตารางในฐานข้อมูลจะมี "Model" ที่ใช้เพื่อติดต่อกับตารางเมื่อใช้งาน Eloquent นอกจากการอ่านเรคอร์ดจากตารางแล้ว Eloquent model จะช่วยดำเนินการกับฐานข้อมูลตั้งแต่การ Insert, Update, และ Delete เรคอร์ดในตารางด้วยเช่นกัน
รู้จักกับ Eager Loading
Eager Loading เป็นการบอกให้ Eloquent รู้ว่าเราต้องการอ่านข้อมูล Model โดยมีการดึง relation ที่เกี่ยวข้องมาด้วย ทำให้ framework สามารถสร้าง SQL Query ที่มีประสิทธิภาพในการดึงข้อมูลที่ต้องการได้ เมื่อใช้ Eager Loading แล้วจะช่วยให้ลด query ที่ต้องสร้างขึ้นเหลือเพียง 1 หรือ 2 query เท่านั้นเอง
ในตัวอย่างนี้ คุณจะได้ลองตั้งค่า relation แล้วลองสร้าง query แบบมีการใช้งาน Eager Loading และไม่ใช้ Eager Loading
6 ความลับ Laravel Eloquent ที่จะช่วยปรับปรุง Code ของคุณให้ดียิ่งขึ้น
ในตัวอย่างนี้เราจะเผยเคล็ดลับเกี่ยวกับ Laravel ที่คุณอาจจะไม่รู้มาก่อน method และ property ที่คุณอาจจะไม่รู้จักที่ช่วยให้ code ของคุณดูง่ายมากขึ้น
20 เคล็ดลับในการใช้ Laravel Eloquent
แม้จะดูเหมือนการเขียน Eloquent ORM เป็นเรื่องง่าย ๆ แต่ลึก ๆ ข้างในแล้วยังมี function ที่กึ่ง ๆ ซ่อนไว้หรือไม่ค่อยเป็นที่รู้จักมากนักว่าสามารถเอามาใช้ได่ คุณจะได้ค้นพอทริคบางอย่างที่คุณอาจไม่เคยได้รู้มาก่อนกับตัวอย่างนี้
Laravel เมธอด firstOrNew, firstOrCreate, firstOr, และ updateOrCreate
ถ้าคุณได้คุ้นเคยกับการใช้งาน Laravel มาแล้ว คุณอาจจะรู้จักกับเมธอดพื้นฐานหลาย ๆ ตัว ใน Eloquent Models อย่างเช่น make()
, create()
, update()
, และ save().
Laravel ยังมี เมธอดอื่น ๆ ที่มีประโยชน์มากในการสร้างและแก้ไข Models ที่คุณอาจจะไม่เคยรู้มาก่อน ใน Tutorial นี้ คุณจะได้เรียนรู้วิธีการใช้งาน method เหล่านี้และได้เห็นถึงประโยชน์ที่จะใช้งาน
Laravel Validation
การใช้งาน Laravel Validation
แกนหลักที่สำคัญในโปรเจคคือการทำความเข้าใจว่าเราะจะ validate request ที่ได้รับจากผู้ใช้ได้อย่างไร ใน Tutorial นี้ เราจะมาดูวิธีการตั้งค่า validation ด้วย controller, form requests, และ rules.
การ Test การ validation ความยาวข้อมูลใน Laravel
เรียนรู้การสร้าง Test และการ validation ความยาว String
เพิ่มการเช็คว่ารหัสผ่านถูก Pwned ใน Laravel ด้วย Form validation
Have I been pwned? เป็นบริการที่เก็บรวบรวมการถูกเจาะของข้อมูลทั้งหมดและข่วยให้เราสามารถเช็คได้ว่า email หรือ username มีอยู่ในการถูกเจาะที่ไหนบ้างมั้ย ใน Tutorial นี้เราจะได้เรียนรู้วิธีการใช้งานข้อมูลในใน Laravel Form Validation
Laravel Helpers
สร้าง Laravel Helpers ด้วยตัวคุณเอง
ใน Laravel มี helper functions จำนวนมากที่ช่วยให้การทำงานของเราสะดวกขึ้น เช่น การทำงานกับ arrays, file paths, string, และ routes นอกจากนี้ยังรวมไปถึง function dd() ที่เรารู้จักกันดี เราสามารถกำหนด helper functions ขึ้นมาใช้งานได้เองใน Laravel application และ PHP packages โดยการใช้ composer ทำการ import function เหล่านี้ให้เราโดยอัตโนมัติ
5 Laravel Helpers ที่ช่วยให้ชีวิตคุณง่ายมากขึ้น
มี function helpers จำนวนมากใน Laravel ที่ช่วยให้การเขียนโปรแกรมใน Laravel เรียบง่ายมากขึ้น ในตัวอย่างนี้เราะจะแนะนำให้คุณรู้จักกับ function ที่น่าจะได้ใช้งานบ่อย ๆ ในการเขียน Laravel application
เจาะให้ลึกขึ้น
รู้จักกับ Laravel Model Events
Laravel Model events ช่วยให้คุณแทรกการทำงานเข้าไปในหลาย ๆ จุดตาม Model Lifecycle รวมไปถึงสามารถป้องกันการ save หรือ delete ข้อมูลได้ ใน Laravel model document ได้วางโครงการใช้งาน event เหล่านี้ด้วยคลาส Event ในบทความนี้จะอธิบายเพิ่มเติมรายละเอียดในการใช้งาน events และ listeners
Laravel Jobs และ Queue 101
ใน Tutorial นี้คุณจะได้เรียนรู้กับการใช้ Laravel Jobs และ Queues โดยการสร้างแอพพลิเคชัน Analytics แบบ ง่าย ๆ
ใช้ Laravel Sanctum เพื่อ authenticate React SPA
Sanctum เป็นแพคเกจหนึ่งใน Laravel ที่ช่วยเรื่องการ Authentication ผ่าน API ใน Tutorial นี้เราจะได้ดูวิธีการใช้งาน Sanctum เพื่อทำการ authenticate React SPA แอพ ที่มีการใช้งาน Laravel เป็น Backend
เคล็ดลับในการเพิ่มความเร็วให้ PHP Unit
การมี Test Suit ที่ Run ได้เร็วมีความสำคัญไม่แพ้กับการมีแอพพลิเคชันที่ทำงานได้เร็ว การมี feedback ที่เร็วเกี่ยวกับ code ที่เขียนขึ้นช่วยให้นักพัฒนาเขียน production code เสร็จได้เร็วมากขึ้น ในตัวอย่างนี้เราจะมาแสดงให้เห็นถึงวิธีการที่จะทำให้ Test run ได้เร็วมากยิ่งขึ้น
การ Seeding ข้อมูลสำหรับ Testing
ใน Tutorial นี้เราจะมาลองเขียน Test case เพื่อทดสอบ User Model และ Seeder เพื่อ seed 10 users เพื่อเขียนข้อมูลลง database
เคล็ดการทำ Route ให้ดียิ่งขึ้น
ใน Tutorial นี้เรียนรู้วิธีการใช้งาน Route ใน Laravel application
Laravel Model Factories Tutorial
Laravel มาพร้อมกับ Feature ที่เรียกว่า Model Factories ที่ออกแบบมาเพื่อให้เราสามารถสร้าง "Fake" Model มีประโยชน์การใช้งานหลาย ๆ กรณี โดยที่สำคัญคือใช้เพื่อ Testing และ Database Seeding เราจะลองมาดูรายละเอียดเกี่ยวกับ Feature นี้ใน Tutorial
สร้าง Single Page Apllication (SPA) ด้วย Vue และ Laravel
อันนี้เป็น Series หลายตอนที่จะพาให้นักพัฒนา Laravel รู้จักกับการสร้าง Vue SPA มีทั้งหมด 6 ตอน ได้แก่ part 1, part 2, part 3, part 4, part 5, and part 6
เพิ่มประสิทธิภาพการใช้งาน Terminal
นักพัฒนา Laravel สามารถเพิ่ม Productivity โดยการใช้เครื่องมือที่ดีขึ้นใน Terminal มาลองดูตัวอย่างตาม Tutorial ว่าคุณจะสามารถใช้งาน Terminal ให้ดีขึ้นได้อย่างไร
ปิดท้าย
ปี 2020 อาจจะเป็นปีที่ค่อนข้างยากลำบากสำหรับนักพัฒนา Laravel หลาย ๆ คน แต่อย่างไรก็ตาม Laravel ก็ยังคงมี version ใหม่และความสามารถใหม่ออกมาเรื่อย ๆ ในปี 2021 ก็จะยังคงมี Laravel 9 และเรื่องที่น่าติดตามในหมู่ Laravel community อีกเช่นกัน