composer install 命令
从当前目录读取 composer.json 文件,处理依赖关系,创建composer.lock文件, 并把依赖安装到 vendor 目录下。
composer.lock vs composer.json
如果当前目录下存在 composer.lock 文件,它会从此文件读取依赖版本,而不是根据composer.json 文件去获取依赖。
如果没有 composer.lock 文件,composer 将在处理完依赖关系后创建它。
依赖升级
为了获取依赖的最新版本,并且升级 composer.lock 文件,你应该使用 composer update 命令。
小结
composer.lock 相当于composer依赖关系的缓存文件,有它从它处获取依赖,没它composer.json并生成缓存。composer.lock文件中保存的是组件及其依赖的具体版本,在多人协同开发的情况下,这个文件能很好的解决组件不同而产生的问题。在使用 composer install 的时候是不会修改 composer.lock 这个文件,所以会把这个文件也放入版本管理中,其它人在使用时只需要 composer install 就可以了。而使用 composer update 后修改这个文件。
composer 常用命令
命令 说明 composer config -g --unset repos.packagist 取消镜像 composer config -g repo.packagist composer https://packagist.org 切换为国外镜像 composer config -l -g 查看全局配置 composer require tymon/jwt-auth 0.5.* 根据版本安装组件包 composer remove aws/aws-sdk-php 卸载组件包 composer showcomposer show monolog/*
composer show monolog/monolog 列出所有已经安装的包
可以通过通配符进行筛选
显示具体某个包的
地址改为中国镜像地址
composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
镜像名 | 地址 | 赞助商 | 更新频率 | 备注 |
---|---|---|---|---|
阿里云 Composer 镜像 | https://mirrors.aliyun.com/composer/ | 阿里云 | 96 秒 | 推荐 |
腾讯云 Composer 镜像 | PHP Composer | 腾讯云 | 24 小时 | - |
PHP 国内 Composer 镜像 | https://packagist.phpcomposer.com | 仁润股份 | 24 小时 | 不稳定 |
华为云 Composer 镜像 | https://repo.huaweicloud.com/repository/php/ | 华为云 | 未知 | 未知 |
php.cnpkg.org Composer 镜像 | https://php.cnpkg.org | 安畅网络 | 60 秒 | - |
最后介绍两个处理加载不了包的解决办法命令
1.composer dump-autoload。我们从场景说它的用途吧,这个命令用在自动加载,当你在项目里自己写了一个包,那你怎么让它自己加载呢,你就可以通过这个命令,Composer 就会把相对应的目录文件生成到composer目录中。
2.composer install –ignore-platform-reqs 。就相当于设置了忽略版本匹配。