Composer – PHP 依赖管理的新时代
Composer 是 PHP 中的一个依赖管理工具. 它可以让你声明自己项目所依赖的库,然后它将会在项目中为你安装这些库。Composer 不是包管理器。是的,它实际上和”包”或者库打交道,但是它是以项目为单位进行管理,把它们安装到你项目中的一个目录(例如 vendor )。默认情况下它不会以全局的方式安装任何东西。因此,它是一个依赖管理器。
国内镜像
全局安装
Composer 需要 PHP 5.3.2+ 才能运行。
你可以把这个文件放到任何你想放的地方。如果你把它放到你的 PATH 中,你就可以全局访问它了。在类 unix 系统中你甚至可以使它可执行,并且调用的时候不需要 php。
1 | curl -sS https://getcomposer.org/installer | php |
然后,只需要执行 composer 命令来运行 Composer
,而不是 php composer.phar。
Windows 安装
下载安装 https://getcomposer.org/Composer-Setup.exe
它将安装最新版本的 Composer ,并设置好系统的环境变量,因此你可以在任何目录下直接使用 composer 命令。
手动安装
设置系统的环境变量 PATH 并运行安装命令下载 composer.phar 文件:
1 | C:\Users\username>cd C:\bin |
详情请查看手册文档 点击查看
查看版本号
composer --version
保持 Composer 一直是最新版本
composer selfupdate
在 mac 中用命令行时用 sublime 打开文件
如果是在默认 shell 下sudo ln -s "/Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl" /usr/bin/subl
使用 zsh 的可以使用以下命令vi ~/.zshrc
1 | alias subl="'/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl'" |
source ~/.zshrc
声明依赖
创建一个文件夹 test
在项目目录下创建一个 composer.json 文件,指明依赖,比如,你的项目依赖 monolog:
1 | { |
安装依赖
安装依赖非常简单,只需在项目目录下运行:composer install
自动加载
Composer 提供了自动加载的特性,只需在你的代码的初始化部分中加入下面一行:
1 | require 'vendor/autoload.php'; |
列出所有可用的软件包
composer show
展示-参数
1 | --installed (-i): 列出已安装的依赖包。 |
composer 常用命令
1 | composer list 列出所有可用的命令 |
更多命令行,请看 http://docs.phpcomposer.com/03-cli.html
更新 autoloader
比如在包中加入了一个新的类,需要执行 dump-autoload,而不必执行 install or updatecomposer dump-autoload
创建项目 create-project
composer create-project laravel/laravel
模块仓库
packagist.org 是 Composer 的仓库,很多著名的 PHP 库都能在其中找到。你也可以提交你自己的作品。
在 packagist 中提交项目
在 https://github.com/ 中上传项目:
在文件夹中创建 composer.json ,内容如下
1 | { |
当然你也可以直接 composer init
进行一步步填写
先登录
点击 submit 进行提交你在 github 上传好的项目链接
composer 整合 github 实现自动推送
- 先在 packagist 上获取 token
- 再在 github 上你的项目上点击 settings