Skip to content

composer

A Dependency Manager for PHP

官方网站

简介

Composer 是 PHP 的依赖管理工具,用于管理项目中的外部依赖库。它类似于 Node.js 的 npm 或 Python 的 pip,是现代 PHP 开发的标准工具。

主要功能

  • 依赖管理:自动下载和更新项目所需的 PHP 包
  • 自动加载:生成符合 PSR-4 标准的类自动加载文件
  • 版本控制:支持语义化版本控制,确保依赖的稳定性
  • 依赖解析:自动解决包之间的依赖关系

安装

Linux/macOS

bash
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Windows

直接下载 Composer-Setup.exe 进行安装。

验证安装

bash
composer --version

基本用法

初始化项目

bash
composer init

安装依赖

bash
# 安装指定包
composer require vendor/package

# 从 composer.json 安装所有依赖
composer install

# 更新所有依赖到最新版本
composer update

常用命令

bash
# 搜索包
composer search package-name

# 显示已安装的包信息
composer show

# 移除包
composer remove vendor/package

# 检查依赖是否最新
composer outdated

# 生成自动加载文件
composer dump-autoload

配置文件说明

composer.json 示例

json
{
    "name": "vendor/project-name",
    "description": "项目描述",
    "type": "project",
    "require": {
        "php": ">=7.4",
        "vendor/package": "^1.0"
    },
    "require-dev": {
        "phpunit/phpunit": "^9.0"
    },
    "autoload": {
        "psr-4": {
            "App\\": "src/"
        }
    },
    "scripts": {
        "test": "phpunit"
    }
}

版本约束说明

  • ^1.0:兼容 1.x 版本,大于等于 1.0 且小于 2.0
  • ~1.0:大于等于 1.0 且小于 2.0
  • 1.*:1.x 的最新版本
  • dev-master:开发分支版本