Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每一个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认状况下它不会在全局安装任何东西。所以,这仅仅是一个依赖管理。php
这种想法并不新鲜,Composer 受到了 node's npm 和 ruby's bundler 的强烈启发。而当时 PHP 下并无相似的工具。html
Composer 将这样为你解决问题:node
a) 你有一个项目依赖于若干个库。npm
b) 其中一些库依赖于其余库。json
c) 你声明你所依赖的东西。安全
d) Composer 会找出哪一个版本的包须要安装,并安装它们(将它们下载到你的项目中)。ruby
安装并配置Composer中国源;yii2
使用composer,安装yii;app
Ref: 1. Composer中文网
Ref: 2. Yii 2.0权威指南 - 安装Yii
Ref: 3. 深刻理解Yii2.0composer
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
// Open Terminal,查看本机composer配置参数 composer config -l -g
// 编辑配置文件 vi /Users/zic/.composer/config.json // 编辑composer运行配置文件config.json { "config": { }, "repositories": [ { "packagist": false }, { "type": "composer", "url": "http://packagist.phpcomposer.com/" } ] } // 编辑项目依赖关系说明文件 composer.json composer config -e
composer self-update
Note: 更换为中国源后,包的下载速度有了很是明显的加快,感谢http://www.phpcomposer.com/同仁们的努力!
// 第一条命令安装 Composer asset plugin,它是经过 Composer 管理 bower 和 npm 包所必须的,此命令全局生效,一劳永逸。 composer global require "fxp/composer-asset-plugin:~1.0.0" // 这二者最主要的区别在于高级模版提供了环境切换和先后台分离。 // 对于团队开发而言,环境切换功能很实用。对于大型应用,先后台分离既是逻辑上的划分,也是安全上的须要。高级模版功能相对丰富. // 安装基础版 composer create-project --prefer-dist yiisoft/yii2-app-basic basic // 安装高级版 composer create-project --prefer-dist yiisoft/yii2-app-advanced com.infaith.www
安装目录以下图所示
cd /path/to/com.infaith.www php init