如何在CentOS 7上安装和使用PHP Composer
Composer 是PHP的依赖项管理器(类似于Node.js npm 或Python 的 pip)。
Composer将提取您项目所依赖的所有必需PHP软件包,并为您管理它们。它用于所有现代PHP框架和平台,例如Laravel,Symfony,Drupal和 Magento 2 。
在本教程中,我们将完成在CentOS 7计算机上安装和使用Composer的步骤。
先决条件
在继续本教程之前,请确保满足以下先决条件:
- 以具有sudo特权的用户身份登录
- 已在CentOS 7 系统上安装了 PHP7。
在CentOS上安装Composer
以下步骤描述了如何在CentOS 7系统上安装Composer。
首先安装PHP CLI(命令行界面)软件包和所有其他依赖项,它们具有:
sudo yum install php-cli php-zip wget unzip
一旦安装了PHP CLI,请使用以下命令下载Composer安装程序脚本:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
要验证脚本的数据完整性,请将脚本SHA-384
哈希与 Composer公钥上的最新安装程序哈希进行比较/ Signatures 页面。
以下 wget命令将从Composer的Github页面下载最新的Composer安装程序的预期签名并将其存储在名为HASH
的变量中:
HASH="$(wget -q -O - https://composer.github.io/installer.sig)"
要验证安装脚本是否未损坏,请运行以下命令:
php -r "if (hash_file('SHA384', 'composer-setup.php') === '$HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
如果哈希匹配,则会显示以下消息:
Installer verified
如果哈希不匹配,您会看到Installer corrupt
]。在这种情况下,您需要重新下载Composer安装脚本,并用 echo $HASH
仔细检查$HASH
变量的值。安装程序通过验证后,即可继续下一步。
运行以下命令,将Composer安装在/usr/local/bin
目录中:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
All settings correct for using ComposerDownloading...
Composer (version 1.8.5) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
composer
作为系统级命令安装,将对所有用户可用。
最后一步是验证安装:
composer
上面的命令将打印Composer的版本,命令,和参数。
______/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.8.5 2019-04-09 17:46:47
Usage:
command [options] [arguments]
至此,您已成功在CentOS系统上安装了Composer。
如果要安装每个项目的Composer,请使用以下命令php composer-setup.php
,它将在当前工作目录中创建一个名为composer.phar
的文件。您可以通过运行./composer.phar <command>.
使用composer
Composer入门
现在您的CentOS系统上已安装Composer,我们将向您展示如何在PHP项目中使用Composer。
首先创建一个目录,该目录将成为项目的根目录并保存composer.json
文件。
composer.json
文件描述了您的PHP项目,包括PHP依赖项和其他元数据。
创建项目目录,然后用以下方法切换到该目录:
mkdir ~/my-first-composer-projectcd ~/my-first-composer-project
在此示例中,我们将创建一个示例应用程序,该应用程序将使用名为 carbon 。
运行以下命令以初始化新的Composer项目并安装carbon软件包:
composer require nesbot/carbon
Using version ^2.2 for nesbot/carbon./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 3 installs, 0 updates, 0 removals
- Installing symfony/polyfill-mbstring (v1.9.0): Downloading (100%)
- Installing symfony/translation (v4.1.4): Downloading (100%)
- Installing nesbot/carbon (2.2.0): Downloading (100%)
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
如您从上面的输出中看到的,Composer将创建composer.json
文件,并将下载并安装carbon及其所有依赖项。
如果您列出了项目的目录,则会看到它包含两个文件composer.json
和composer.lock
,以及一个vendor
目录。
ls -l
-rw-r--r-- 1 myfreax users 60 Aug 29 00:50 composer.json-rw-r--r-- 1 myfreax users 6.8K Aug 29 00:50 composer.lock
drwxr-xr-x 5 myfreax users 4.0K Aug 29 00:50 vendor
- 目录
vendor
是存储项目依赖项的目录。 composer.lock
包含所有已安装软件包的列表,包括其版本。composer.json
描述了PHP项目和所有PHP依赖项。
您可以在Composer存储库 Packagist 中搜索PHP软件包。
Composer提供了自动加载功能,使我们无需使用require
或include
文件就可以使用PHP类。
创建一个名为testing.php
的文件并添加以下代码:
<?phprequire __DIR__ . '/vendor/autoload.php';
use Carbon\Carbon;
printf("Now: %s", Carbon::now());
让我们逐行分析代码。
在打开php标记后的第一行中,我们包含vendor/autoload.php
文件,该文件由Composer自动生成,该文件将自动加载所有库。
接下来,我们将Carbon\Carbon
别名为Carbon
,并在最后一行中使用Carbon now
方法打印当前时间。
通过键入以下内容来运行脚本:
php testing.php
输出应如下所示:
Now: 2018-09-26 20:08:18
稍后,如果您想更新PHP软件包,则只需运行:
composer update
上面的命令将检查已安装软件包的较新版本,如果找到了较新版本,并且版本约束与composer.json
中指定的匹配,则Composer将更新软件包。 262]
结论
您已经了解了如何在CentOS 7计算机上安装Composer。我们还向您展示了如何使用Composer创建基本的PHP项目。
要查找有关Composer的更多信息,请访问官方 Composer文档页面。
如有任何疑问,请在下面发表评论。
以上是 如何在CentOS 7上安装和使用PHP Composer 的全部内容, 来源链接: utcz.com/z/507189.html