Master Laravel PHP for Beginners and Intermediate
4.6 (747 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,979 students enrolled

Master Laravel PHP for Beginners and Intermediate

Get from zero to proficiency in Laravel PHP Framework in one week! Course for beginners and intermediate students!
Highest Rated
4.6 (747 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
3,979 students enrolled
Created by Piotr Jura
Last updated 8/2020
English [Auto]
Current price: $69.99 Original price: $99.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 30 hours on-demand video
  • 4 articles
  • 3 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Master Eloquent, Controllers, Views and all the basics
  • Advanced features like Queues, Polymorphic relationships, Service Container
  • Learn all the theory while building a real application as you progress!
  • Setting up PHP with Apache on Windows and Mac
  • How to use Visual Studio Code effectively
  • Creating APIs, serializing data, API resources and API testing
  • Routes and Controllers
  • Laravel Tinker - command line playground to Laravel
  • Blade templates
  • Blade componenets
  • Creating Forms, CSRF tokens
  • One to One, One to Many, Many to Many relationships
  • Polymorphic relationships
  • Testing
  • Local and Global Eloquent Query Scopes
  • Database migrations
  • Database seeding and factories
  • Authentication (Guard)
  • Authorization (Policies and Gates)
  • Authorization
  • Caching
  • How to use queues
  • Files and file uploads
  • How to send e-mails
  • Observers, Events, Listeners and Subscribers
  • Localization
  • Services, Service Container, Contracts and Facades
  • Using Traits in Laravel - SoftDeletes and creating your own!
Course content
Expand all 218 lectures 30:11:02
+ Introduction
2 lectures 14:44

What you will learn and gain by watching this course. What is Laravel, why it's beneficial to learn it?

Preview 05:12

How to use this course. A crash course on Udemy UI, asking questions, getting the source code of the course.

Making most out of this course
+ Setting up Environment (using XAMPP)
4 lectures 45:18

Installing the Visual Studio Code editor and some useful extensions.

Visual Studio Code - extensions, shortcuts and tricks

Get a list of Visual Studio Code extensions that will make working with PHP and Laravel a pleasure.

Visual Studio Code Extensions

How to set-up Apache, PHP and MySQL using XAMPP on Windows. How to install Composer and create a new Laravel application.

Installing PHP & Apache on Windows using XAMPP

How to set-up Apache, PHP and MySQL using XAMPP on MacOS. How to install Composer and create a new Laravel application.

Installing PHP & Apache on Mac using XAMPP
+ Laravel Essentials 101
28 lectures 03:51:22

Creating Closure routes, view() helper explained, route:list Artisan command, view layouts and using following directives: @extends, @section, @yield.

Routes, views & layouts

Simple actions/routes for template rendering, how to specify route parameters (required and optional), passing data to the views, unescaped data rendering.

View routes, route parameters, rendering data in views

Giving your routes meaningful names, generating URLs to named routes.

Named routes and generating URLs

Generating new controller using make:controller, defining routes for controllers, understanding what is a controller, adding actions, how routes are loaded using RouteServiceProvider.

Controller basics

Creating database using PhpMyAdmin, database.php config file explained, env() helper function explained, .env file explained, setting environment variables in VirtualHost.

Database configuration and environment variables
Laravel 7 Changes in Migrations

Learn what database migrations are, understand up() and down() methods, configuring credentials for database, some Laravel default migrations, running migrations, handling key too long error, modifying field length to 191 to fit the key limit, understanding migrations table.

Introduction to database migrations

Creating migrations using php artisan migrate --table, --create, using Schema::create, Schema::table, Blueprint, creating columns, rolling back.

Creating and managing migrations

Basics of Eloquent models and using Laravel Tinker as Laravel "Playground".

Laravel Tinker and Eloquent models

How to read, modify and save data and doing simple database queries.

Creating, updating and reading data and making simple database queries

Why using Resource controllers might make your code well organized and readable.

Resource controllers
Blade directives @if, @foreach, dates
Forms and CSRF tokens
Session flash messages
Validation basics
Displaying validation errors
Form requests
Mass assignment in Eloquent model
old() helper in forms
Creating data editing forms
Updating Eloquent model
Including another view in Blade
Deleting models
Deleting models using forms
Laravel 6 Update: Laravel UI package
Laravel Mix: handling JavaScript and CSS assets
Basic styling of applications
+ Testing Basics
8 lectures 53:16
Testing configuration and environment
Writing first functional test
Testing database interactions
Testing store() action (model creation)
Testing for failure
Testing update() action (model updates)
Testing delete() action (model deletion)
+ One to One Eloquent Relations
3 lectures 25:09
One to One relation with migration
One to One assigning relationship
One to One querying relationship
+ One to Many Eloquent Relations
3 lectures 18:44
One to Many relation with migration
One to Many assigning relationship
One to Many querying relationship
+ Querying Basics
5 lectures 29:22
Lazy Loading vs Eager Loading
Querying relationship existence
Querying relationship absence
Counting related models
Using withCount() in practice (fetching count of comments) with test
+ Model Factories
4 lectures 42:29
Model Factory introduction
Model Factory states
Model Factory callbacks (afterCreating, afterMaking)
Application: Implementing comment list
+ Authentication
12 lectures 01:42:59
IMPORTANT: Laravel 7+ Changes
Authentication overview
How user registration works in Laravel
Guard component and how logging users in works
Custom registration form and Auth routes
Formatting validation errors
RedirectIfAuthenticated middleware
Log-in form with "Remember Me" feature
Logging out, @guest directive, debugging CSRF token errors
Retrieving the currently authenticated user
Protecting routes (requiring authentication)
Testing routes that require authentication
+ Database Seeding
7 lectures 59:39
Refreshing database, database foreign keys and existing data
Problem: SQLite test database NOT NULL problem
Database seeding basics
Using Model Factory inside Seeder
Model relations inside seeder
Individual seeder classes
Making seeder interactive
  • Basic PHP and Object Oriented Programming understanding

Learn Laravel with this brand new course covering Laravel from A-Z for beginners!

So far I've created 3 courses on Udemy and all of them were about Symfony. I have 13000+ happy students and my courses are Best Sellers in the Symfony category. It's time for a new, detailed as no other Laravel course on Udemy!

Laravel is becoming the most popular choice among PHP developers these days. It's easiest to start with, most fun to use and very performant tool and ecosystem of tools, that just lets you get the job done.

Let's be honest, Web Development became Rocket Science. Before you set up your environment, all the required libraries, tools and settings - it can be a week before you can write a "Hello World" program. Laravel is different. It just works. Out of the box, with sensible defaults. It let's you use all modern techniques and tools of Web Development with ease. Let's see:

  • Sending E-mails? Checked

  • Service Container? Checked

  • Queues and Background Processing? Checked

  • Web Sockets? Checked

  • Powerful Database Abstraction? Checked

  • Database Migrations? Checked

  • Database seeding (generating fake data)? Checked

  • Powerful MVC abstraction? Checked

  • Powerful Filesystem abstraction (local file system, Amazon S3)? Checked

  • Caching (Redis, Memcached)? Checked

  • Handling sessions? Checked

  • Serializing to JSON? Checked

  • Authentication (User Registration, Logging in)? Checked

  • Authorization (User Permissions)? Checked

  • Event based applications? Checked

The best thing about that is this is not only a powerful framework, it's actually easy to use and understand, even by beginners. I've created this course with beginners in mind. I explain the topics the way, that you only learn about something when you are ready for it. It's not overwhelming, we will cover the topics in a very specific order, so when you will start a new topic, you will already know everything to understand the concept at hand perfectly.

Let's have a break with me talking and see what my current students have to say about my courses (those are real reviews of my courses publicly visible here on Udemy!):


"Amazing course! In-depth explanations, perfect talking pace, talks slow and is direct to the point. I had no previously knowledge in Symfony before starting, and this course gave me the confidence to start developing real world apps using Symfony. You will learn a lot of the Symfony framework, and some other cool techniques like Ajax Calls, Testing, Server configuration and Continous Deployment of your code."


"This is a Fantastic Course for Symfony exceeds expectations !!

Piotr is an experienced, knowledgeable and serious developer.

This course not only helped me to learn the inner workings of Symfony but also improve my OO php syntax, improve on git, get a better understanding of development stages, introduced me to cloud deployment ... even CI.CD.

From where I stand as a beginner, is a mini MVC developer course.

Couldn't recommend it enough.

You will certainly learn.

Thanks Piotr."


"Did the instructor write Symfony? He is very very knowledgeable."


"This guy is by far the best instructor I've ever come across. I took his other Symfony 4 course and advanced my understanding of the Framework more in a week than I have in the past year.

This course has filled a ton of gaps. He understands the complex learning curve and it's relationship to the content he covers thoroughly... a rarity in teaching, never mind coding complex Frameworks.

Just stick with the course.. you'll have that "Aha!" moment.

I'm working on my own Symfony 4 Framework based project(s) as I take this course... between Piotr, Github, and Google... its getting done!

Two of the most effective courses I've ever taken. I can't wait for what he puts out next."

I think it's the right time to give the same experience to anyone wanting to learn Laravel!

If you don't want to waste your time, this 27+ hours course would be the most productive week you will spend. I'm sure you will feel very comfortable with Laravel after that time.

Now, I'll be honest with you guys - I'm not a very talkative person. I only say what needs to be said. I won't be wasting any of your time. What I mean, is that this 30+ hours is what I think you need, no more, and no less.

Take a look at the curriculum, see some free preview videos. If for any reason you will be unhappy with your purchase, there is a 30 day Money Back Guarantee (No questions asked!).

Who this course is for:
  • Any Novice PHP developer without previous framework exposure
  • Anyone who knows other PHP frameworks and would like to learn Laravel