Composer 总结
1. Composer 作用
Composer 是开源的 PHP 包管理工具,是 PHP 用来管理依赖关系的工具。
请详见:Composer 中文网
2. Composer 安装
在安装前须将 PHP 环境变量加入全局变量,确保 PHP -v可用。
2.1 下载安装脚本 composer-setup.php 到当前目录
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
2.2 执行安装过程
php composer-setup.php
2.3 删除安装脚本
php -r "unlink('composer-setup.php');"
2.4 其它安装方式
请详细见:https://pkg.phpcomposer.com/#how-to-install-composer2.5 Composer 升级
- 手动升级
下载最新版 Composer:https://install.phpcomposer.com/composer.phar
替换原来的版本即可。 - 使用用命令行升级
composer self-update
- 手动升级
3. Composer 常用文件
- vendor 目录
Composer 下载扩展包在此目录下。
此目录下会自动生成 autoload.php 文件,可以直接 require 或 include。 - Composer.json 文件
此文件是 Composer 的配置文件。Composer 通过读取此文件,处理依赖关系并把依赖库安装到 vendor 目录下。 - Composer.lock 文件
此文件会根据 Composer.json 内容自动生成,与 Composer.json 在同一目录,用来控制依赖库版本。
4. Composer 常用命令
常用命令表:
序号 | 命令 | 描述 |
---|---|---|
1. | composer list | 获取帮助信息 |
2. | composer init | 以交互方式填写 composer.json 文件信息 |
3. | composer install | 从当前目录读取 composer.json 文件,处理依赖关系,并安装到 vendor 目录下 |
4. | composer update | 获取依赖的最新版本,升级 composer.lock 文件 |
5. | composer require | 添加新的依赖包到 composer.json 文件中并执行安装或更新 |
6. | composer search | 在当项目中搜索依赖包 |
7. | composer show | 列举所有可用的资源包 |
8. | composer validate | 检测 composer.json 是否有效 |
9. | composer self-update | 将 composer 工具更新到最新版本 |
10. | composer create-project | 基于 composer 创建一个新项目 |
11. | composer config | 显示和修改配置选项 |
5. 变更 Composer 安装源
由于 Composer 源在国外,下载速度很慢,所以需要将源修改为国内镜像源。推荐阿里云的镜像源。
- 5.1 安装 Composer 源
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
- 5.2 删除 Composer 源
composer config -g --unset repos.packagist
5.3 其它国内安装源
| 序号 | 名称 | 安装源地址 | 备注 |
| :—: | :————-: | :———————————————————————- | :———————-: |
| 1. | composer | https://packagist.org | 原站 |
| 2. | phpcomposer | https://packagist.phpcomposer.com | Composer 中文网源 |
| 3. | aliyun | https://mirrors.aliyun.com/composer | 阿里云源 |
| 4. | tencent | https://mirrors.cloud.tencent.com/composer | 腾讯源 |
| 5. | huawei | https://mirrors.huaweicloud.com/repository/php | 华为源 |
| 6. | cnpkg | https://php.cnpkg.org | 中国全量镜像 |
| 7. | sjtug | https://packagist.mirrors.sjtug.sjtu.edu.cn | 上海交通大学源 |