Composer 从根本上改变了 PHP 生态系统,为现代 PHP 的发展奠定了基础,即基于组件的应用程序和框架。
这些要求在项目级 JSON 文件中声明,然后 Composer 使用该文件来评估哪个包版本最匹配应用程序的依赖项。 评估将考虑嵌套的依赖关系和系统要求(如果有)。
请务必注意,Composer 允许您在每个项目的基础上安装必要的库。 它允许您在不同的 PHP 项目中使用同一库的不同版本。
安装和使用由 作曲家,您必须以标准格式在项目中声明它们,Composer 将负责其余的工作。 例如,如果要使用 Composer 安装 mpdf 库,则需要在项目根目录中运行以下命令。
$composer require mpdf/mpdf
但是 Composer 从哪里下载库呢?
有哪些图书馆可用?
有一个中央存储库,其中 作曲家 保留可用库的列表:Packagist。
现在让我们看看如何在 Linux、macOS 和 Windows 等操作系统上安装 Composer。
要在 linux、unix 和 macOS 上安装 composer,您需要在以下位置下载安装程序 https://getcomposer.org/doc/00-intro.md#installation-linux-unix-macos 并将其作为项目的一部分本地安装或作为系统范围的可执行文件全局安装。
安装程序将检查一些 PHP 设置,并将名为 composer.phar 的文件下载到您的工作目录中。 这是 Composer 二进制文件。 它是一个 PHAR(PHP 存档),它是 PHP 的存档格式,可以从命令行等执行。
php composer.phar
要在 Windows 上安装作曲家,您需要在以下位置下载安装程序 https://getcomposer.org/doc/00-intro.md#installation-windows
安装完成后,您可以使用命令验证它是否正常工作
composer -V
你应该得到这样的答案
Packagist,公共存储库 作曲家, 包含一组 PHP 库 开放源码 通过 Composer 免费提供。 该服务的高级版本为私有包提供托管服务,使得即使在闭源项目中也可以使用 Composer。
Packagist 上有数百个可用的库,可见 Composer 的受欢迎程度。 在您的 PHP 项目中,如果您需要一个您认为应该已经作为第三方库提供的功能,那么 Packagist 是您应该首先寻找的地方。
除了 Packagist 之外,您还可以通过更改 composer.json 文件中的 repositories 键,要求 Composer 查看其他存储库以进行库安装。 事实上,如果您想要管理您的私人 Composer 包,这就是您要做的。
使用 Composer 安装库有两种方法。 让我们看看他们两个:
要使用安装程序,您必须首先在您的项目中创建一个 composer.json 文件。 在 composer.json 文件中,您只需声明项目的依赖项,如下面的代码片段所示。
{
"require": {
"mpdf/mpdf": "~6.1"
}
}
稍后,当您运行 composer install 命令时,在 json 文件所在的同一文件夹中,Composer 会在 vendor 目录中安装 mpdf 包及其依赖项。
可以说 composer require 命令是执行前面创建 composer.json 文件的过程的一种快捷方式。 require 会自动添加一个包到你的 composer.json 文件中。 以下命令显示了如何在 require 的帮助下安装 mpdf 包。
$composer require mpdf/mpdf
安装 mpdf 包及其依赖项后,require 还会在 composer.json 文件中添加正在安装的包的条目。 如果 composer.json 文件不存在,它将即时创建。
Ercole Palmeri