首页
文章
留言
首页
文章
留言
Composer使用总结
2017 年 01 月 06 日
后端
PHP
Composer
Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。 #### 一、安装 安装前请务必确保已经正确安装了 PHP。打开命令行窗口并执行 `php -v` 查看是否正确输出版本号。 打开命令行并依次执行下列命令安装最新版本的 Composer: ```bash php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" php composer-setup.php php -r "unlink('composer-setup.php');" ``` ##### Mac 或 Linux 系统: 打开命令行窗口并执行如下命令将前面下载的 composer.phar 文件移动到 /usr/local/bin/ 目录下面: ```bash sudo mv composer.phar /usr/local/bin/composer ``` ##### Windows 系统: 找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。 将 composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。 在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。 ```vb @php "%~dp0composer.phar" %* ``` 最后重新打开一个命令行窗口试一试执行 `composer --V` 看看是否正确输出版本号(大写V) #### 二、常用命令 更新自身 ```plaintext composer selfupdate ``` 清除缓存 ```plaintext composer clearcache ``` 更新自动加载文件 ```plaintext composer dump-autoload --optimize ``` 列出依赖包 ```plaintext composer show ``` 安装依赖包,读取 composer.json 文件,处理依赖关系,并把其安装到 vendor 目录下。 ```plaintext composer install ``` 更新依赖包 ```plaintext composer update ``` 更新指定依赖包 ```plaintext composer update [包名] ``` 新增依赖包 ```plaintext composer require [包名] ``` 卸载依赖包 ```plaintext composer remove [包名] ``` #### 三、安装多版本 先下载 composer.phar 到本地,下载地址:https://getcomposer.org/download/ 指定 composer.phar 执行 ```plaintext php composer.phar install ``` #### 四、更换镜像 镜像地址 > https://packagist.phpcomposer.com(中国全量镜像) > https://packagist.org(国外镜像) > https://mirrors.aliyun.com/composer/(国内镜像) > https://php.cnpkg.org(国内镜像) 使用镜像(不能在 root 用户下执行,要切换到别的用户执行,否则执行不会成功) 方法一:(全局) ```plaintext composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ ``` 方法二:(当前项目) ```plaintext composer config repo.packagist https://mirrors.aliyun.com/composer/ ``` 上述命令将会在当前项目中的 composer.json 文件的末尾自动添加镜像的配置信息(你也可以自己手工添加): ```json "repositories": { "packagist": { "type": "composer", "url": "https://mirrors.aliyun.com/composer/" } } ``` 现在试一下 `composer install` 来体验飞一般的速度吧! 查看当前使用的镜像 ```plaintext composer config -l -g ``` 取消镜像 ```plaintext composer config -g --unset repos.packagist(全局) composer config --unset repos.packagist(当前项目) ``` 镜像说明: 一般情况下,安装包的数据(主要是 zip 文件)一般是从 github.com 上下载的,安装包的元数据是从 packagist.org 上下载的。 然而,由于众所周知的原因,国外的网站连接速度很慢,并且随时可能被“墙”甚至“不存在”。 “Packagist 中国全量镜像”所做的就是缓存所有安装包和元数据到国内的机房并通过国内的 CDN 进行加速,这样就不必再去向国外的网站发起请求,从而达到加速 `composer install` 以及 `composer update` 的过程,并且更加快速、稳定。因此,即使 packagist.org、github.com 发生故障(主要是连接速度太慢和被墙),你仍然可以下载、更新安装包。 **注意** 建议:在更改配置源之前,推荐先执行 `composer clearcache` 清除缓存。若项目之前已通过其他源安装,务必删除 composer.lock 以及 vendor 目录,重新生成。 如果已存在 composer.lock 文件,先删除,再运行 `composer install` 重新生成。原因:composer.lock 缓存了之前的配置信息,从而导致新的镜像配置无效。
1
相关文章
Redis基本使用总结
Redis、MemCache、MongoDB比较
Sphinx使用总结
Nginx常用配置说明
PHP使用Kafka
全部分类
前端
后端
运维
架构
算法
数据库
移动应用
桌面应用
程序开发
热门标签
Elasticsearch
Redis
PHP
Lua
Kubernetes
GUI
CSS
HTML
Android
NoSQL
C++
Kafka
Composer
Shell
Python
Linux
iOS
OpenResty
MySQL
CentOS
Supervisor
Docker
JavaScript
Objective-C
MongoDB
Qt
Sphinx
macOS
Nginx
Git
爬虫
多线程
热门文章
Kubernetes介绍
macOS常用命令
Supervisor使用总结
10种常见的软件架构模式
OpenResty+Lua+Kafka收集日志
C/C++基础知识总结
Docker使用总结
Git使用总结
Elasticsearch详解
Nginx常用配置说明