composer dump-autoload
只更新自动加载而不去更新依赖
update命令
通过update命令,可以更新项目里所有的包,或者指定的某些包。
# 还可以通过通配符匹配包
$ composer update monolog/monolog symfony/*
# 更新所有依赖
$ composer update
# 更新指定的包
$ composer update monolog/monolog
# 更新指定的多个包
$ composer update monolog/monolog symfony/dependency-injection
# 还可以通过通配符匹配包
$ composer update monolog/monolog symfony/*
show命令
使用show命令可以列出项目目前所安装的包的信息:
# 列出所有已经安装的包
$ composer show
# 可以通过通配符进行筛选
$ composer show monolog/*
# 显示具体某个包的信息
$ composer show monolog/monolog
install 安装
install
命令从当前目录读取 composer.json
文件,处理(composer.json 文件中项目的)[依赖关系],并把其安装到当前的 vendor
目录下。
它会从composer.lock
文件读取 依赖版本,而不是根据 composer.json
文件去获取依赖。这确保了该库的每个使用者都能得到相同的依赖版本。
1)例如我们想要下载相关依赖 :版本1.19的monolog。我们可以通过composer.json文件:
{
"require": {
"monolog/monolog": "1.19"
}
}
然后运行install命令,或者直接通过require命令(不用修改 composer.json 文件)达到目的:
require 命令需要依赖的其它包,必须要有一个版本约束。并且应该遵循 foo/bar:1.0.0
这样的格式
2)$ composer require monolog/monolog:1.19
# 或者
$ composer require monolog/monolog=1.19
# 或者
$composer require monolog/monolog 1.19
3)以第1)种方式下载依赖包时,如果添加新包,可以使用 composer update 来下载新包(不能使用 composer install 命令)
{ "require": { "phpmailer/phpmailer": "~5.2", "phpexcel/phpexcel": "^1.7" } }
remove命令
使用remove命令可以移除一个包及其依赖(在依赖没有被其他包使用的情况下):
$ composer remove monolog/monolog
本人测试这个命令不起作用,可以 修改 composer.json 文件,去除 monolog/monolog (想要移除的项目),执行 composer update 即可
search命令
使用search命令可以进行包的搜索:
$ composer search monolog
# 如果只是想匹配名称可以使用--only-name选项
$ composer search --only-name monolog
composer 更新
composer update #更新所有依赖包, 并且升级composer.lock文件,如果vendor 没有composer.json文件中的包自动下载新的
composer update vendor/package vendor/package2 如果你只是想更新几个包,你可以像这样分别列出它们
composer.phar update vendor/* 你还可以使用通配符进行批量更新
composer 更新自身 composer self-update
composer 查看所有命令 composer list
composer 清除缓存 composer clear-cache
Composer更换国内镜像
全局更换镜像:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
仅当前项目更换镜像:在项目目录中执行
composer config repo.packagist composer https://packagist.phpcomposer.com
也可以修改项目中的composer.json文件:
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" } }
有时候运气不好,https://packagist.phpcomposer.com
站点维护不可用,那么可以尝试用Laravel China 维护的站点
将上面的地址换成下面地址即可
https://packagist.laravel-china.org
相关文章 PHP 开发者该知道的 5 个 Composer 小技巧