The best way to learn Laravel today.
If you’re a capable PHP developer looking to learn Laravel for the first time, a novice Laravel developer looking to level up, or an experienced Laravel developer looking to learn a few new tricks, this book is for you. It’s clear, concise, and will get you up and running creating powerful and flexible apps in Laravel in no time.
Ready to buy? You can buy the physical book from Amazon, or the physical and/or digital (ebook) from O'Reilly directly.
Who is this book for?
- PHP developers who want to learn Laravel for the first time
- Novice Laravel developers who want to dig deep into the framework
- Experienced Laravel developers who want to learn a few new tricks
- Avid gemsbok fans
- What version of Laravel does the book cover?
This book covers Laravel 5.3 and is up-to-date as of the end of 2016. It also shows where new features were added in 5.2 and 5.3, so it'll be useful for any app developed with 5.1-5.3.
- What is a gemsbok?
It's a majestic creature, really. It's a type of antelope, native to South Africa. Gemsbok have also been called the "Sabre Antelope" because of their lethal horns.
- Do I have to know any Laravel to read the book?
Nope! The only thing you need to know about Laravel is that it's worth your time. We'll cover everything else in the book.
- How do you pronounce Laravel, anyway?
Lair-uh-VELL. It's intended as a rhyme with "Cair Paravel" in Narnia, which is pronounced "Pair-uh-VELL".
- Why Laravel?
That's literally the name of the first chapter of the book. You're gonna like this book, I can tell.
- Why a book, not video?
Some people (like me!) learn best from reading. Also, Jeffrey Way is entirely untouchable. Who'd want to even try?
- Why Laravel
Why consider a framework at all? Why PHP? Why Laravel? We'll cover the history of PHP frameworks and Laravel's history and vision.
- Setting up a Laravel Development Environment
Any modern PHP development environment will be good for developing Laravel, but if you're new to modern PHP, we'll get you ready in no time.
- Routing and Controllers
The foundation of any web application is the ability to turn a user request into some action or response. Routes are the core.
- Blade Templating
Laravel offers a simple, powerful templating engine called Blade. We'll cover the basics of Blade and how it's different from the alternatives.
- Frontend Components
Laravel isn't all backend. It offers a series of frontend-focused tools like pagination and a Gulp-based asset build stack with Elixir.
- Collecting and Handling User Data
We'll cover collecting, validating, and transforming user data of all sorts, from form input to JSON and HTTP headers.
- Artisan and Tinker
We'll cover Laravel's command-line tools Artisan, a task runner, and Tinker, a REPL, and how you can create your own custom Artisan commands.
- Database and Eloquent
Learn about Laravel's ActiveRecord ORM, Eloquent, and its fluent query builder, migrations, and seeders.
- User Authentication and Authorization
Laravel comes with user authentication and authorization tooling built in out of the box. Learn how to use it and customize it.
- Requests and Responses
Laravel's request and response objects extend the Symfony HTTP Request classes, so we'll cover Symfony's classes and what Laravel adds.
- The Container
Laravel's service container (also know as the "Inversion of Control" container) is the glue that holds everything together. Learn in depth how it works.
It's easy to use PHPUnit to drive your unit tests, integration tests, application tests, or whatever else you'd like. Learn about how to test framework components, too.
- Writing APIs
Many developers use Laravel to write RESTful JSON APIs; learn about the tools Laravel offers out of the box for API development, and some common practices.
- Storage and retrieval
Laravel provides simple, consistent APIs to storage media like cache, session, cloud storage, and more. We'll cover how they're similar, and how they differ.
- Mail and notifications
We'll look at Laravel's basic mailing tools, but also its innovative Mailable and Notification systems that make it simple to notify users across hundreds of channels.
- Queues, Jobs, Events, Broadcasting, and the Scheduler
Laravel makes it simple to connect to more complex application architectures like WebSockets and job queues.
- Helpers and Collections
Learn about Laravel's many global helpers and the superpowered Collection class.
So, you read this far? It's time. You're ready. Do it. Dooooo ittttttttt. Do it. Do. It.