ComposerPHP的一个依赖管理工具。

项目开发中,难免会用到各种已有的扩展库,各个扩展库的依赖关系可能错综复杂,使用传统的require include的方式会让你困于处理各种依赖问题,而无法专注于自身的业务代码。

这一次,真正了解Composer

现代PHP依赖管理利器

PHP5.3引入命名空间的概念,有了这一加持,万众期待的Composer踏着七彩祥云而来,让这个世界上最好的编程语言有了现代范儿。

依赖管理工具在现代主流编程语言中不可或缺,Java有Maven,Python有pip,Nodejs有npm, Ruby有gem,Go有go mod

Composer作为现代PHP依赖管理利器,它允许开发者声明项目所依赖的库,并且自动管理(安装/更新)它们,让开发者可以快速的组装 扩展自己的项目。

Composer的出现,让PHP生态有了质的飞跃,诞生了各式各样、丰富多彩的轮子,主流框架LaravelYiiSymfony等相继支持Composer,国产框架ThinkPHP从5.0以后的版本也支持了Composer,老牌框架Codeigniter在最近的发布的4.0版本也采用了Composer管理依赖。

PHP的应用商店

PackagistComposer主要的、默认的仓库,它聚合可通过Composer安装的公共PHP软件包,这些软件包可以托管在Github上。

截止目前,Packagist 累计收录25万多项目,包含200多万个版本,累计安装222.68亿次。

由于网络原因,国内访问上述仓库时很慢很卡、甚至超时,国内大厂陆续提供了国内的Composer镜像仓库。