Dropbox的PHP SDK强烈建议人们应该使用Composer来安装和加载他们的SDK。此外,AWS PHP SDK的第2版还提供Composer作为安装/加载器(幸运的是没有偏见)。
我正在使用Codeigniter(CI)框架,它有几个简单的机制来加载模块。它有1)内置的“供应商”文件夹(CI称为“third_party”,Composer称为“vendor”)。 2)“helper”和“library”文件夹来控制我创建的模块,例如$this->load->library("blah_blah");
3)最后,没有什么能阻止我为边缘情况编写vanilla PHP include/require "blah/blah.php";
语句。
我不太了解其他PHP框架,但我认为它们以类似的简单方式处理依赖项,因为这似乎是使用框架的主要目的之一。
鉴于这一切,除了框架提供的内容之外,他们对Composer的附加好处是什么?或者替换我的代码中与我的框架对话的部分与使用Composer的部分相反?一般来说,我不了解Composer的内容吗?
答案 0 :(得分:1)
首先阅读http://getcomposer.org/doc/00-intro.md
Composer解决的问题是:
a)你有一个依赖于许多库的项目。
b)其中一些库依赖于其他库。
c)你声明你所依赖的东西。
d)Composer找出需要哪些版本的软件包 安装并安装它们(意味着它将它们下载到您的 项目)。
您可以安装,更新和管理项目的依赖项。另一个有用的功能是您获得了加载所有库的autoload.php
文件。您永远不需要再包含文件(使用任何支持PSR-0命名空间的框架)。
这是一个article,解释了如何将作曲家与CI配合使用。我相信你可以找到很多文章,因为使用作曲家非常方便。