Composer #

什么是 Composer? #

Composer 是 PHP 的依赖管理工具。它允许你声明项目所依赖的库,并为你管理(安装/更新)它们。Composer 不是包管理器,而是依赖管理器,它会在项目中安装项目依赖的库。

文档结构 #

本指南按以下结构组织,循序渐进地帮助你掌握 Composer:

1. 入门基础 #

主题 描述 文档链接
Composer 简介 Composer 的定义、特点、安装与基本使用 intro.md

2. 核心功能 #

主题 描述 文档链接
基本使用 基本命令、安装依赖、版本约束 basic-usage.md
依赖管理 composer.json 详解、依赖类型、版本控制 dependencies.md

3. 进阶功能 #

主题 描述 文档链接
自动加载 PSR-4 自动加载、类映射、文件加载 autoloading.md
脚本与钩子 脚本定义、事件钩子、自定义命令 scripts.md

4. 高级特性 #

主题 描述 文档链接
高级特性 私有仓库、平台配置、优化技巧 advanced.md

5. 最佳实践 #

主题 描述 文档链接
最佳实践 项目结构、版本策略、团队协作 best-practices.md

学习路径 #

入门阶段(Composer 新手) #

  1. 了解 Composer 的基本概念和优势
  2. 安装 Composer 工具
  3. 掌握基本命令:install、update、require
  4. 理解 composer.json 和 composer.lock
  5. 创建第一个 Composer 项目

进阶阶段(Composer 熟练) #

  1. 深入学习版本约束语法
  2. 掌握依赖类型的使用场景
  3. 理解自动加载机制
  4. 学会使用脚本和钩子
  5. 配置国内镜像加速

高级阶段(Composer 专家) #

  1. 掌握私有仓库配置
  2. 理解依赖解析算法
  3. 优化 Composer 性能
  4. 处理依赖冲突
  5. 发布自己的包

大师阶段(Composer 大师) #

  1. 构建企业级 PHP 项目架构
  2. 设计可复用的 PHP 库
  3. 参与开源社区贡献
  4. 解决复杂的依赖问题
  5. 定制 Composer 插件

Composer vs PEAR vs 手动管理 #

特性 Composer PEAR 手动管理
依赖管理 ✅ 完整 ✅ 基础 ❌ 无
版本约束 ✅ 灵活 ❌ 单一版本 ❌ 无
项目隔离 ✅ 是 ❌ 全局 ✅ 是
自动加载 ✅ 内置 ❌ 需配置 ❌ 手动
社区生态 ✅ 丰富 ⚠️ 衰退 ❌ 无
学习曲线 最低

快速开始 #

bash
# 安装 Composer
curl -sS https://getcomposer.org/installer | php

# 创建新项目
composer create-project laravel/laravel my-app

# 安装依赖
composer install

# 添加依赖
composer require monolog/monolog

# 更新依赖
composer update

composer.json 示例 #

json
{
    "name": "my/project",
    "description": "My awesome PHP project",
    "type": "project",
    "require": {
        "php": "^8.1",
        "laravel/framework": "^10.0"
    },
    "require-dev": {
        "phpunit/phpunit": "^10.0"
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/"
        }
    }
}

资源推荐 #

贡献指南 #

欢迎对本指南进行贡献!如果你发现错误或有改进建议,请联系我们。

更新日志 #

  • 2026-03-28:创建初始版本,包含完整的 Composer 学习大纲

继续探索本指南,逐步掌握 Composer 技术,从新手成长为 Composer 专家!

最后更新:2026-03-28