新概念PHP包管理器:PHP Composer

jopen 12年前

几乎每种语言都有包管理器。Java有Maven,Python有easy_install和pip,Ruby有gem,Nodejs有npm。说到PHP当然也有PEAR,但我一直认为PEAR是设计最烂的一个包管理器:依赖处理不到位、配置复杂、命令行难用,有时候还会报错。一直期待有个新的包管理器,甚至想自己写一个(可能不太现实,但想写的心早有了)。

但发现了Composer后,发现他已经可以很好的解决PHP包管理的问题,而且有越来越多的开源软件都有在支持Composer管理。

定义依赖关系

在你的应用程序根目录创建一个文件composer.json,就可以开始写依赖关系了。写法非常简单:

{      "require": {          "vendor/package": "1.3.2",          "vendor/package2": "1.*",          "vendor/package3": ">=2.0.3"      }  }

安装Composer

如果你是Linux开发一个命令行就搞定了

curl -s http://getcomposer.org/installer | php

安装依赖包

依然是执行一条命令即可

php composer.phar install

自动加载依赖

如果你使用的库采用了PSR-0标准(为了方便加载而定义一种命名和路径的映射规范),那么只需要使用Packagist提供的自动加载即可处理所有依赖。

require 'vendor/autoload.php';

项目主页:http://www.open-open.com/lib/view/home/1368628198031