每个项目都会涉及到很多的外部库文件
很多时候,我们都是手动在维护这些外部的库文件
或者我们写个专门的检测程序来检查当前的运行环境
PHP有个 Composer 可以自动帮忙维护这写库文件,
但代码分发给别人的时候,只要写好composer.json 依赖关系,
就可以不用在把某些库文件夹在你的开发代码中了
而得到你代码的人,只需要一个php composer install
便可自动下载需要的库文件(当然,这些库文件得composer支持.)
composer 下载地址
典型的composer.json (依赖关系详细请看:http://getcomposer.org/doc/01-basic-usage.md#composer-json-project-setup)
"require": {
"phpunit/phpunit": "3.7.*"
}
}
说明当前项目依赖phpunit,
当执行 php composer install 时候,会下载对应的phpunit
运行后的结构目录为
./vendor
./vendor/bin/
...
启动PHPUNIT的bat文件在bin目录里面,还有其他php文件
但这些文件都不需要你去管理
开发的时候,你只需要引入vendor的autoload.php 到你的项目即可,
很多框架都有自己的一套引入标准,所以
你也可不引入vendor的autoload.php,来管理自动加载的问题,
在你需要的时候在手动对应的class文件.
composer 比pear方便的一个重要原因为
pear需要服务器提供商提供,而composer不用.且composer可不用安装
composer的依赖包也支持大部分pear (以下搜索pear开头可知...)
https://packagist.org/ (所支持的包文件在这个网站详细介绍)
还有一个消息,很多框架都开始用composer管理依赖关系了.
额,或许,该抛下pear了....