Stage 1 of 7 · 10 lessons · ~6 months
Your language and how HTTP works
Get fluent in one backend language and its runtime, and learn exactly what happens between a client and your server. Everything later in this roadmap sits on these two things.
Start: The terminal and GitLessons· one lesson for each topic, in this order
- 1The terminal and GitLesson
- 2Modern PHP syntax and typesLesson
- 3Arrays, functions and classesLesson
- 4Errors and exceptionsLesson
- 5Composer and autoloadingLesson
- 6How PHP runs a requestLesson
- 7DNS: from a name to an addressLesson
- 8TCP connections and TLSLesson
- 9HTTP requests, responses and headersLesson
- 10HTTP methods and status codesLesson
Start with· follow one of these
- VideoFreePHP For Beginners
Laracasts · Beginner
Free video series that builds a small app in plain PHP before any framework
- GuideFreePHP: The Right Way
Josh Lockhart and contributors · Intermediate
Modern PHP practice in one place: Composer, PSR standards, PDO and security basics
Practise
Keep handy
Also worth your time
The DNS, TCP, TLS and HTTP steps behind every request your backend will handle
Before moving on: Write a small PHP command line script with Composer and PHPUnit tests, push it to GitHub in sensible commits, and explain every line of output from curl -v against a real website.

Learn PHP 8 with strict types and Composer, and ignore old tutorials that mix SQL into HTML files. Plain PHP first is worth it: you will understand what Laravel does for you instead of treating it as magic.