首页
文章
留言
首页
文章
留言
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、MemCache、MongoDB比较
Python爬虫之Beautiful Soup的使用
PHP常用函数总结
PHP开发之字符串处理
PHP使用Kafka
全部分类
前端
后端
运维
架构
算法
数据库
移动应用
桌面应用
程序开发
热门标签
MySQL
Git
Linux
爬虫
多线程
Android
CentOS
NoSQL
PHP
Shell
Supervisor
Redis
HTML
Kafka
Python
Lua
Nginx
Sphinx
macOS
Docker
Objective-C
GUI
Qt
iOS
Elasticsearch
C++
CSS
MongoDB
Kubernetes
Composer
JavaScript
OpenResty
热门文章
Redis、MemCache、MongoDB比较
macOS常用命令
Nginx常用配置说明
OpenResty+Lua+Kafka收集日志
Elasticsearch详解
Supervisor使用总结
Git使用总结
CentOS常用命令总结
Qt实现TCP通讯
HTML5常用特性总结