• 日常搜索
  • 百度一下
  • Google
  • 在线工具
  • 搜转载

什么是PHP的Composer(如何安装Composer)

今天,我们将讨论 php 中最重要的工具之一:依赖管理器 Composer。在本文中,我们将了解 Composer 的来龙去脉以及如何在日常 PHP 开发中安装和使用它。 

什么是PHP的Composer(如何安装Composer)  第1张

如果您使用 PHP 编码已有一段时间,您将了解 PHP 库如何帮助节省工作并使代码可重用。过去,将库添加到 PHP 中更加困难,这导致了许多重新发明轮子以获取通用功能。例如,数据库抽象层 (DAL) 是任何 PHP 应用程序的必备品,但没有标准库或包,所以很多人最终开发了自己的。

当然,当时有很多可用的选项,但是很难添加依赖项、跟踪它们以及从长远来看管理您的应用程序。这就是像 Composer 这样的依赖管理器的用武之地。事实上,在 Composer 之前,有一个名为 PEAR 的流行工具,用于管理 PHP 扩展和库。但它有其自身的局限性,创建 Composer 就是为了解决这个问题。

简而言之,我们需要一个可用于安装库和管理应用程序依赖项的工具。Composer 在这方面做得很好。它是 PHP 的应用程序级包管理器,已广受欢迎并成为管理 PHP 应用程序依赖项的事实标准。

什么是Composer?

Composer 是 PHP 中用于依赖管理的工具。它允许您声明项目所依赖的库,并将为您管理(安装/更新)它们。——  作曲家介绍

重要的是要注意 Composer 允许您在每个项目的基础上安装必要的库。它允许您在不同的 PHP 项目中使用同一库的不同版本。当然,也可以选择全局安装库,但不推荐。如果您听说过用于node .js 的 npm 或用于 Ruby 的 Bundler,那就是 Composer 用于 PHP。

要安装和使用由 Composer 管理的库,您只需在项目中以标准格式声明它们,其余的将由 Composer 管理。例如,如果您想使用 Composer 安装 phpmailer 库,您只需在项目的根目录下运行以下命令。

$composer require phpmailer/phpmailer

这会将 phpmailer 库及其依赖项安装在项目的供应商目录中。更重要的是,它还会创建composer.json和composer.lock文件,用于跟踪项目的依赖关系。我们将在本文后面详细讨论这一点。

事实上,在管理第三方 PHP 库方面,Composer 已成为全球标准。symfonyLaraveldrupal 等流行的PHP框架已经在其开发生命周期中采用了基于 Composer 的工作流程。

在下一节中,我们将了解如何安装 Composer。

如何安装作曲家

在安装 Composer 时,有两种方法。您可以在每个项目的基础上本地或全局安装它。我们将在全局范围内安装它,以便可以在不同的项目中使用它。

如何在 *nix 和mac OS上安装 Composer

对于基于 *nix 的系统(Linux 和 Unix),只需一个命令即可立即安装和运行 Composer。继续并在终端中运行以下命令。

$curl -s https://getcomposer.org/installer | php
All settings correct for using Composer
Downloading...

Composer (version 1.10.6) successfully installed to: /home/sajal/composer.phar
Use it: php composer.phar

这样,Composer 就安装在本地了,你就可以通过php composer.phar命令来使用它了!但是,我们想全局安装它,所以让我们通过执行以下命令来实现。

$sudo mv ./composer.phar /usr/bin/composer

现在,您应该可以在全局范围内使用 Composer。继续测试它,看看它是否安装成功。

$composer --version
Composer version 1.10.6 2020-05-06 10:28:10

另一方面,如果您在本地安装了 Composer,您将运行该php composer.phar --version命令。

如您所见,在基于 Linux 和 Unix 的系统上安装 Composer 非常简单。在下一节中,我们将了解如何在 Windows 系统上安装它。

如何在 Windows 上安装 Composer

对于 Windows 用户,安装 Composer 更加容易。您只需要下载 Composer 安装程序可执行文件 并运行它。按照安装步骤进行操作,它将安装最新的 Composer 版本。您应该能够立即运行 Composer 命令。

请务必注意,安装 Composer 后需要重新启动终端,因为该PATH变量仅在终端启动时才会加载。

以上就是在不同操作系统上安装 Composer 的简要指南。

什么是Packagist?

现在,您了解了 Composer 的基础知识以及如何安装它。下一个问题是:您如何知道可以使用 Composer 安装哪些库?Composer 是否有任何中央存储库保存可用库的列表?

是的:Packagist包装师。

Packagist 是默认的 Composer 包存储库,当您要求 Composer 安装特定库时,它会从其中提取库及其依赖项。Packagist 上有数百个库可用,可见 Composer 的受欢迎程度。在您的 PHP 项目中,如果您需要一个您认为应该已经作为第三方库提供的功能,那么 Packagist 是您应该首先检查的地方!

在搜索库时,Composer 还能够超越 Packagist 存储库。repositories您可以要求 Composer 通过更改文件中的密钥来查看 Packagist 以外的存储库以安装库composer.json。事实上,如果您想管理自己的私有 Composer 包,您会这样做。

在下一节中,我们将看到如何使用 Composer 在您的 PHP 项目中安装库。

如何使用Composer

大多数情况下,使用 Composer 安装库有两种方法。让我们快速浏览一下以了解它是如何工作的。

install命令_

要使用install,您需要先在您的项目中创建一个composer.json文件。在composer.json文件中,您只需要声明您的项目依赖项,如以下代码段所示。

{
    “要求”: {
        “phpmailer/phpmailer”:“~6.1”
    }}

接下来,当您从该文件夹运行命令时,Composer 会在vendor目录composer install中安装 phpmailer 包及其依赖项。更重要的是,它还创建了composer.lock文件,该文件维护了所有包的列表以及已安装的包的确切版本。

require命令_

我们可以说该composer require命令是前面创建composer.json文件过程的一种快捷方式。 require将自动将一个包添加到您的 composer.json 文件中。以下命令显示了如何在require.

$composer 需要 phpmailer/phpmailer

安装 phpmailer 包及其依赖项后,require还添加了安装在composer.json文件中的包的条目。如果composer.json文件不存在,它将即时创建。当然,它还会更新composer.lock文件以写入包信息以及确切的版本。

因此,您可以使用 Composer 在 PHP 项目中安装必要的依赖项。至此,我们也到了本文的结尾。

结论

Composer 已成为 PHP 中管理项目依赖项的事实标准。在本文中,我们介绍了 Composer 的基础知识以及如何安装它。 


文章目录
  • 什么是Composer?
  • 如何安装作曲家
    • 如何在 *nix 和mac OS上安装 Composer
    • 如何在 Windows 上安装 Composer
  • 什么是Packagist?
  • 如何使用Composer
    • install命令_
    • require命令_
  • 结论