Laravel学习-01预备阶段-02 Composer
在上一篇《Laravel学习-01预备阶段-01 PHP 基础》中,我们回顾了 Laravel 开发所需的 PHP 核心语法。本篇聚焦于现代 PHP 开发的基石工具 ------ Composer,并简要说明它在 Laravel 项目中的核心作用。掌握 Composer,是高效使用 Laravel 的第一步。
1. 什么是 Composer?
Composer 是 PHP 的依赖管理工具。它允许你声明项目所依赖的第三方库(包),并自动完成下载、安装、更新和自动加载。
Laravel 本身及其绝大多数功能模块(如数据库、队列、缓存、邮件等)都是通过 Composer 管理的。没有 Composer,就无法使用 Laravel 的生态。
2. 安装 Composer
macOS / Linux
bash
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
Windows
前往 getcomposer.org/download/ 下载 Composer-Setup.exe,按向导安装。
安装完成后,在终端执行:
bashcomposer -V若显示类似
Composer version 2.x.x,说明安装成功。
3. 配置国内镜像(推荐)
由于网络原因,官方源(packagist.org)在国内访问较慢。建议切换为国内镜像:
bash
# 配置阿里云镜像(全局生效)
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
使用
-g表示全局配置,对所有项目生效。如需恢复官方源,执行:
bashcomposer config -g --unset repos.packagist
4. Composer 的核心概念
4.1 composer.json
这是项目的"依赖清单",定义了:
- 项目名称、描述
- 依赖的包(
require) - 开发依赖(
require-dev) - 自动加载规则(
autoload)
示例:
json
{
"name": "laravel/laravel",
"type": "project",
"require": {
"php": "^8.2",
"laravel/framework": "^11.0"
},
"autoload": {
"psr-4": {
"App\\": "app/"
}
}
}
4.2 vendor/ 目录
运行 composer install 后,所有依赖包会被下载到 vendor/ 目录。不要手动修改此目录内容。
4.3 composer.lock
锁定当前安装的确切版本号,确保团队成员或生产环境使用完全一致的依赖。应提交到 Git。
5. 常用命令
| 命令 | 说明 |
|---|---|
composer install |
根据 composer.lock(或 composer.json)安装依赖 |
composer update |
更新依赖到最新允许版本(会更新 composer.lock) |
composer require monolog/monolog |
安装依赖,并更新 composer.json |
composer require --dev phpunit/phpunit |
安装开发依赖 |
composer dump-autoload |
重新生成自动加载文件(如新增类后需执行) |
Laravel 项目中,通常只需运行一次
composer install即可完成依赖安装。
6. Composer 与 Laravel 的关系
-
创建项目:
bashcomposer create-project laravel/laravel myapp实际是下载
laravel/laravel包并安装其所有依赖。 -
扩展功能 :
安装如
laravel/sanctum(API 认证)、spatie/laravel-permission(权限管理)等,均通过composer require完成。 -
自动加载 :
Composer 根据
psr-4规则自动生成vendor/autoload.php,Laravel 入口文件public/index.php会引入它,从而无需手动require类文件。
7. 验证 Composer 是否正常工作
新建一个测试目录,执行:
bash
mkdir test-composer && cd test-composer
composer require monolog/monolog
若成功下载 monolog 并生成 vendor/ 目录,说明 Composer 已配置正确。
小结
Composer 是 Laravel 乃至现代 PHP 开发不可或缺的工具。它解决了依赖管理、版本控制和自动加载三大核心问题。理解 composer.json、vendor/ 和常用命令,将为你后续学习 Laravel 扫清障碍。
注意:在 Laravel 项目中,所有第三方包都应通过 Composer 安装,切勿手动复制代码!
系列预告 :
《Laravel学习-01预备阶段-03 Web基础》