Laravel 11 is the latest iteration of the renowned PHP web application framework,
celebrated for its elegant syntax and developer-friendly features. This version
introduces several enhancements aimed at streamlining development workflows
and improving application performance.
Key Features in Laravel 11:
1. Simplified Directory Structure: Laravel 11 adopts a more streamlined
directory layout, reducing complexity and making it easier for developers to
navigate and manage their projects.
2. Enhanced Configuration Handling: The framework offers improved
methods for managing configuration files, including commands to cache,
clear, and publish configurations, thereby optimizing application
performance.
3. Laravel Prompts: This new feature facilitates interactive user input within
Artisan console commands, providing a more intuitive and efficient way to
gather information during command execution.
Artisan Console Commands: Artisan is Laravel's command-line interface,
offering a suite of commands to assist in application development and
management.
Running the Development Server: To start the local development server:
we use following command
php artisan serve
Managing Database Migrations:
If you want to migrate a specific table instead of running all pending
migrations, you can use the following command:
php artisan migrate --
path=database/migrations/2024_03_27_123456_create_users_table.php
To run all pending migrations:
o php artisan migrate
To rollback the last migration batch:
o php artisan migrate:rollback
Generating Models, Controllers, and Other Classes:
To create a new model:
php artisan make:model YourModel_Name
To create a new controller:
Type Command
Basic Controller php artisan make:controller
NameController
Resource Controller php artisan make:controller
NameController --resource
Clearing Application Cache: To clear the application cache:
php artisan cache:clear
Optimizing Configuration Loading: To cache the configuration files for
faster performance:
php artisan config:cache
1. Basic Autoload Command
composer dump-autoload
This command scans the app/, vendor/, and composer.json files to regenerate
the autoload files. It is useful when adding new classes or updating class
names.
Summary of Laravel MVC
Component Description
Model (M) Interacts with the database, defines business logic.
View (V) Displays UI using Blade templates.
Controller (C) Handles HTTP requests, processes data, and returns responses.
Routes Defines how URLs map to controllers.
1. Types of Routes in Laravel
Laravel supports multiple route types:
Type Purpose
GET Retrieve data (e.g., show a page).
POST Submit data (e.g., form submission).
Type Purpose
PUT Update an existing resource.
PATCH Partially update a resource.
DELETE Remove a resource.
routes/web.php → Handles web routes (uses sessions & cookies).
Ex-- Route::get('/user/{id}', function ($id) { return "User ID: " . $id; });
What is Middleware?
Middleware acts as a layer between the request and the response.
It can:
✔ Check if a user is authenticated.
✔ Log request details.
✔ Modify requests or responses.
✔ Restrict access based on conditions.
Creating Middleware :
To create a new middleware, run;
php artisan make:middleware CheckUserRole
Middleware is essential for security, request validation, and access control.
Global Middleware → Applies to all requests.
Route Middleware → Applied to specific routes.
Middleware with Parameters → Allows flexible logic
Laravel-Specific Extensions
If you're working with Laravel 11 in VS Code, installing the right extensions can
improve productivity. Here are the must-have extensions:
Laravel Blade Snippets – Enhances Blade template syntax highlighting and
autocompletion.
Laravel Artisan – Run Artisan commands directly from VS Code
Laravel Intellisense – Provides better autocompletion for Laravel methods and
classes.
PHP Intelephense – Powerful PHP autocompletion, syntax highlighting, and
refactoring support.
Prettier - Code Formatter – Formats code consistently across PHP, JS, and Blade
files.
MySQL – Allows direct database query execution inside VS Code.