The easiest way to install Laravel is through Composer. First, make sure that PHP 8.1 or later, Composer and required extensions are installed; second, use the command composer create-project laravel/laravel your-project-name to install the project; optionally specify the version or use domestic mirror acceleration; then copy .env.example to .env and run php artisan key:generate to generate the key; if the database is needed, configure the DB parameters in .env; finally use php artisan serve to start the server and access it in the browser to test whether it is successful.
The easiest and most mainstream way to install Laravel is through Composer, PHP's dependency management tool. As long as you have installed Composer correctly and the server environment meets Laravel's requirements, the whole process is actually very fast.

Make sure your environment is ready
Before you start, make sure that you have the following things installed locally or on your server:
- PHP (8.1 or higher recommended)
- Composer (global installation)
- PHP extensions such as OpenSSL, Tokenizer, Mbstring, etc. have been enabled
- MySQL or other supported databases (optional during development)
After Composer is installed, enter composer --version
to see the version number on the command line, which means there is no problem.

Create a Laravel project using Composer
This step is the most core operation. You only need one command to create a Laravel project:
composer create-project laravel/laravel your-project-name
where your-project-name
is the name you want to give the project. This command will automatically download the latest stable version of Laravel from Packagist and install it into the corresponding folder.

If you only want to install a specific version, such as Laravel 9, you can write it like this:
composer create-project laravel/laravel your-project-name "9.*"
Tip: Sometimes due to network problems, you can use domestic mirror acceleration:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
Check and configure the .env
file
After the installation is completed, Laravel will bring a .env.example
file by default. You need to copy it to .env
:
cp.env.example.env
Then run the following command to generate the application key:
php artisan key:generate
At this time, APP_KEY
in your .env
file will be set correctly. This step is very important for Laravel, and many encryption functions rely on this key.
If you need to connect to the database, remember to open the .env
file and modify the following section:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=your_database_name DB_USERNAME=your_username DB_PASSWORD=your_password
Start the built-in server to test whether the installation is successful
You can use the built-in server provided by Artisan to quickly test:
php artisan serve
Then visit http://127.0.0.1:8000
in your browser. If you see the welcome page of Laravel, it means that the installation has been successful.
If you have a virtual host or Nginx/Apache environment, you can also point the entry to public/index.php
, but that is the content of the deployment stage.
Basically that's it. It seems that there are many steps, but each step is not complicated. It is easy to ignore certain details, such as the .env
file not being generated or the permissions are not set properly. As long as you take it step by step, you will basically not make any mistakes.
The above is the detailed content of How to install Laravel with Composer?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

There are three ways to add custom validation rules in Laravel: using closures, Rule classes, and form requests. 1. Use closures to be suitable for lightweight verification, such as preventing the user name "admin"; 2. Create Rule classes (such as ValidUsernameRule) to make complex logic clearer and maintainable; 3. Integrate multiple rules in form requests and centrally manage verification logic. At the same time, you can set prompts through custom messages methods or incoming error message arrays to improve flexibility and maintainability.

ToworkeffectivelywithpivottablesinLaravel,firstaccesspivotdatausingwithPivot()orwithTimestamps(),thenupdateentrieswithupdateExistingPivot(),managerelationshipsviadetach()andsync(),andusecustompivotmodelswhenneeded.1.UsewithPivot()toincludespecificcol

Laravelprovidesacleanandflexiblewaytosendnotificationsviamultiplechannelslikeemail,SMS,in-appalerts,andpushnotifications.Youdefinenotificationchannelsinthevia()methodofanotificationclass,andimplementspecificmethodsliketoMail(),toDatabase(),ortoVonage

Dependency injection automatically handles class dependencies through service containers in Laravel without manual new objects. Its core is constructor injection and method injection, such as automatically passing in the Request instance in the controller. Laravel parses dependencies through type prompts and recursively creates the required objects. The binding interface and implementation can be used by the service provider to use the bind method, or singleton to bind a singleton. When using it, you need to ensure type prompts, avoid constructor complications, use context bindings with caution, and understand automatic parsing rules. Mastering these can improve code flexibility and maintenance.

Laravel performance optimization can improve application efficiency through four core directions. 1. Use the cache mechanism to reduce duplicate queries, store infrequently changing data through Cache::remember() and other methods to reduce database access frequency; 2. Optimize database from the model to query statements, avoid N 1 queries, specifying field queries, adding indexes, paging processing and reading and writing separation, and reduce bottlenecks; 3. Use time-consuming operations such as email sending and file exporting to queue asynchronous processing, use Supervisor to manage workers and set up retry mechanisms; 4. Use middleware and service providers reasonably to avoid complex logic and unnecessary initialization code, and delay loading of services to improve startup efficiency.

Methods to manage database state in Laravel tests include using RefreshDatabase, selective seeding of data, careful use of transactions, and manual cleaning if necessary. 1. Use RefreshDatabasetrait to automatically migrate the database structure to ensure that each test is based on a clean database; 2. Use specific seeds to fill the necessary data and generate dynamic data in combination with the model factory; 3. Use DatabaseTransactionstrait to roll back the test changes, but pay attention to its limitations; 4. Manually truncate the table or reseed the database when it cannot be automatically cleaned. These methods are flexibly selected according to the type of test and environment to ensure the reliability and efficiency of the test.

LaravelSanctum is suitable for simple, lightweight API certifications such as SPA or mobile applications, while Passport is suitable for scenarios where full OAuth2 functionality is required. 1. Sanctum provides token-based authentication, suitable for first-party clients; 2. Passport supports complex processes such as authorization codes and client credentials, suitable for third-party developers to access; 3. Sanctum installation and configuration are simpler and maintenance costs are low; 4. Passport functions are comprehensive but configuration is complex, suitable for platforms that require fine permission control. When selecting, you should determine whether the OAuth2 feature is required based on the project requirements.

Laravel simplifies database transaction processing with built-in support. 1. Use the DB::transaction() method to automatically commit or rollback operations to ensure data integrity; 2. Support nested transactions and implement them through savepoints, but it is usually recommended to use a single transaction wrapper to avoid complexity; 3. Provide manual control methods such as beginTransaction(), commit() and rollBack(), suitable for scenarios that require more flexible processing; 4. Best practices include keeping transactions short, only using them when necessary, testing failures, and recording rollback information. Rationally choosing transaction management methods can help improve application reliability and performance.
