Composer简介
Composer 是 PHP 的一个依赖管理工具,它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。而且Composer是多平台的,支持Windows、Linux与OSX.
Composer安装
局部安装
安装在当前目录
curl -sS https://getcomposer.org/installer | php
安装在指定目录
curl -sS https://getcomposer.org/installer | php -- --install-dir=YOUR-DIR
注意: 如果上述方法由于某些原因失败了,你还可以通过 php >下载安装器:
php -r "readfile('https://getcomposer.org/installer');" | php
全局安装
你可以将此文件放在任何地方。如果你把它放在系统的 PATH 目录中,你就能在全局访问它。 在类Unix系统中,你甚至可以在使用时不加 php 前缀。
你可以执行这些命令让 composer 在你的系统中进行全局调用:
curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer
现在只需要运行 composer 命令就可以使用 Composer 而不需要输入 php composer.phar
使用Composer
要开始在你的项目中使用 Composer,你只需要一个 composer.json 文件。该文件包含了项目的依赖和其它的一些元数据。
c
omposer.json是JSON format,很容易编写的。它允许你定义嵌套结构。下面一个简单的composer.json文件,表明我们需要monolog依赖库,包含的信息有包名称(例如 monolog/monolog),包版本(例如 1.0.*)。
{
"require": {
"monolog/monolog": "1.0.*"
}
}
安装依赖包
php composer.phar install
获取定义的依赖到你的本地项目,只需要调用 composer.phar 运行 install 命令。
接着前面的例子,这将会找到 monolog/monolog 的最新版本,并将它下载到 vendor 目录。 这是一个惯例把第三方的代码到一个指定的目录 vendor。如果是 monolog 将会创建 vendor/monolog/monolog 目录。
自动加载
对于库的自动加载信息,Composer 生成了一个 vendor/autoload.php 文件。你可以简单的引入这个文件,你会得到一个免费的自动加载支持。
require 'vendor/autoload.php';
你可以在 composer.json 的 autoload 字段中增加自己的 autoloader。
{
"autoload": {
"psr-4": {"Acme\\": "src/"}
}
}
Composer 将注册一个 PSR-4 autoloader 到 Acme 命名空间。
你可以定义一个从命名空间到目录的映射。此时 src 会在你项目的根目录,与 vendor 文件夹同级。例如 src/Foo.php 文件应该包含 Acme\Foo 类。
添加 autoload 字段后,你应该再次运行 install 命令来生成 vendor/autoload.php 文件。
更多关于Composer的资料,详见:http://docs.phpcomposer.com/