如何在Debian 10上安装和使用PHP Composer

linux

Composer 是PHP的依赖项管理器(类似于Node.js的npm或Python的pip)。

Composer将提取您项目所依赖的所有必需PHP软件包,并为您管理它们。 它在所有现代PHP框架和平台中都使用,例如Laravel,Symfony,Drupal和Magento。

本文介绍了如何在Debian 10系统上安装Composer。 我们还将介绍如何使用Composer创建和管理PHP项目。

在Debian上安装Composer

在安装Composer之前,请确保已在Debian系统上安装了所有必需的软件包:

sudo apt update

sudo apt install wget php-cli php-zip unzip

Composer提供了一个用 PHP 编写的安装程序,我们将使用它来安装Composer。

通过 wget 下载安装程序:

wget -O composer-setup.php https://getcomposer.org/installer

上面的命令会将文件另存为composer-setup.php到当前工作目录中。

Composer是一个单文件CLI应用程序,可以全局安装或作为项目的一部分安装。 全局安装需要 sudo权限。

要以对整个用户可用的系统级命令的形式全局安装Composer,只需将文件放在系统 PATH中的目录中即可。 以下命令将Composer安装在/usr/local/bin目录中:

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
All settings correct for using Composer

Downloading...

Composer (version 1.10.10) successfully installed to: /usr/local/bin/composer

Use it: php /usr/local/bin/composer

现在,您可以通过在终端中运行composer来使用Composer。

要在本地安装composer,请在项目根目录中下载文件:

sudo php composer-setup.php --install-dir=/path/to/project

这将下载名为composer.phar的文件 。 要使用Composer,请导航到项目目录并运行php composer.phar

当有新的Composer版本可用时,您可以使用以下命令更新安装:

sudo composer self-update  

Composer入门

现在您已经在Debian系统上安装了Composer,我们将向您展示如何创建PHP项目。

首先创建一个目录,该目录将成为项目的根目录并保存composer.json文件。 该文件描述了您的PHP项目,包括PHP依赖关系和其他元数据。

运行以下命令来创建项目目录并使用以下命令切换到该目录:

mkdir ~/my-first-composer-project

cd ~/my-first-composer-project

接下来,我们将使用composer require <package name>命令初始化一个新的composer.json文件,并指定我们要下载的软件包。 在此示例中,我们将创建一个示例应用程序,该应用程序将使用名为 carbon 的包来打印当前时间。

运行以下命令以初始化新的composer.json文件并安装carbon包:

composer require nesbot/carbon
./composer.json has been created

Loading composer repositories with package information

Updating dependencies (including require-dev)

Package operations: 5 installs, 0 updates, 0 removals

- Installing symfony/translation-contracts (v2.1.3): Downloading (100%)

- Installing symfony/polyfill-php80 (v1.18.1): Downloading (100%)

- Installing symfony/polyfill-mbstring (v1.18.1): Downloading (100%)

- Installing symfony/translation (v5.1.3): Downloading (100%)

- Installing nesbot/carbon (2.38.0): Downloading (100%)

symfony/polyfill-mbstring suggests installing ext-mbstring (For best performance)

symfony/translation suggests installing symfony/config

symfony/translation suggests installing symfony/yaml

symfony/translation suggests installing psr/log-implementation (To use logging capability in translator)

Writing lock file

Generating autoload files

5 packages you are using are looking for funding.

Use the `composer fund` command to find out more

如输出所示,Composer创建composer.json文件并下载并安装carbon及其所有依赖项。

如果您以ls列出您的项目目录,则会看到该目录包含两个文件composer.jsoncomposer.lock,以及一个vendor目录。

ls -l
-rw-r--r-- 1 myfreax users   60 Aug 17 21:02 composer.json

-rw-r--r-- 1 myfreax users 6851 Aug 17 21:02 composer.lock

drwxr-xr-x 5 myfreax users 4096 Aug 17 21:02 vendor

  • vendor-项目依赖关系的存储目录。
  • composer.lock -包含所有已安装软件包列表的文件,包括软件包版本。
  • composer.json -描述PHP项目和所有PHP依赖项的文件。

您可以在Composer存储库 Packagist 中搜索PHP软件包。

Composer提供自动加载功能,使您可以使用PHP类,而无需requireinclude文件。

创建一个名为testing.php的文件,然后粘贴以下代码:

<?php

require __DIR__ . '/vendor/autoload.php';

use Carbon\Carbon;

printf("Now: %s", Carbon::now());

让我们逐行分析代码。

在打开php标签后的第一行中,我们包含了由Composer自动生成的vendor/autoload.php文件。 该文件将自动加载所有必需的库。

接下来,我们将Carbon\Carbon作为Carbon的别名,在最后一行中,我们使用Carbon now方法打印当前时间。

通过键入以下内容来运行脚本:

php testing.php

输出应如下所示:

Now: 2020-08-17 21:08:45

以后,如果您需要更新项目包,请输入:

composer update

上面的命令将检查已安装软件包的较新版本,如果找到了较新版本,并且版本约束与composer.json中指定的版本匹配,Composer将更新该软件包。

结论

我们向您展示了如何在Debian 10上安装Composer以及如何使用它来创建基本的PHP项目。

有关Composer的更多信息,请访问官方文档页。

如有任何疑问,请在下面发表评论。

以上是 如何在Debian 10上安装和使用PHP Composer 的全部内容, 来源链接: utcz.com/z/507571.html

回到顶部