検索
ホームページ開発ツールcomposerDebian11 に Composer をインストールして使用する方法を説明する 4 つのステップ!

この記事は、composer のチュートリアル コラムによって、Debian11 に Composer をインストールして使用する方法を段階的に紹介するために書かれたものです。それを必要としている友人たちの役に立ちます。

Composer は、主にプロジェクトの依存関係のインストールと更新を容易にする、人気のある PHP 依存関係管理ツールです。 Composer は、特定のプロジェクトが依存する他のパッケージを確認し、プロジェクトの要件に基づいて適切なバージョンでそれらのパッケージをインストールすることによって機能します。 Composer は、Symfony や Laravel などの一般的な PHP フレームワークに基づいて新しいプロジェクトをブートストラップするためにもよく使用されます。

このガイドでは、Debian 11 サーバーに Composer をインストールして使用します。

前提条件

このチュートリアルに従うには、Debian 11 サーバーをセットアップし、非 root ユーザー sudo を含めて、ファイアウォールを有効にする必要があります。これは、Debian 11 の初期サーバー設定ガイドに従って行うことができます。

ステップ 1 - 依存関係のインストール

Debian 11 システムに既に含まれている可能性のある依存関係に加えて、Composer ではコマンド ラインを実行するために php-cli が必要です。 PHP スクリプトを実行し、unzip して圧縮ファイルを解凍します。

まず、パッケージ マネージャーのキャッシュを更新します。

sudo apt update

次に、依存関係をインストールします。 Composer をダウンロードするには curl が必要で、インストールして実行するには php-cli が必要です。 php-mbstring パッケージは、このチュートリアルで使用するライブラリの機能を提供するために必要です。 git は Composer によってプロジェクトの依存関係をダウンロードするために使用され、unzip は圧縮パッケージを抽出するために使用されます。次のコマンドを使用してすべてをインストールできます。

sudo apt install curl php-cli php-mbstring git unzip

すべての依存関係をインストールしたら、Composer をインストールできます。

ステップ 2 - Composer のダウンロードとインストール

Composer には、PHP で書かれたインストーラーが用意されています。これをダウンロードし、破損していないことを確認してから、それを使用して Composer をインストールします。

まず、ホーム ディレクトリにいることを確認してください。

cd ~

次に、curl を使用してインストーラーを取得します。

curl -sS https://getcomposer.org/installer -o composer-setup.php

次に、インストーラーが Composer の公開キー/署名ページで最新のインストーラーの SHA-384 ハッシュと一致することを確認します。検証手順を容易にするために、次のコマンドを使用してプログラムでコンポーザー ページから最新のハッシュ値を取得し、それをシェル変数に保存できます。

HASH=`curl -sS https://composer.github.io/installer.sig`

取得した値を出力するには、実行します。

echo $HASH
Output55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae复制代码

次に、Composer のダウンロード ページで提供されている次の PHP コードを実行して、インストール スクリプトが安全に実行できることを確認します。

php -r "if 
(hash_file('SHA384', 'composer-setup.php') === '$HASH') { 
echo 'Installer verified'; 
} 
else { echo 'Installer corrupt'; unlink('composer-setup.php'); 
} 
echo PHP_EOL;"

出力は次のようになります。

OutputInstaller verified

メッセージ インストーラーが壊れています を受け取った場合は、インストール スクリプトを再度ダウンロードし、正しいハッシュを使用していることを確認する必要があります。次に、コマンドを実行してインストーラーを再度確認します。検証済みのインストーラーを入手したら、次に進む準備が整います。

composer をグローバルにインストールするには、次のコマンドを使用して Composer をダウンロードし、composer という名前のシステム全体のコマンドとして /usr/local/bin にインストールします。

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

出力は次のようになります。

OutputAll settings correct for using Composer
Downloading...

Composer (version 2.3.10) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

このコマンドを実行して、インストールをテストします。

composer

これにより、次のような Composer のバージョンとパラメータが出力に表示されます。

Output  ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 2.3.10 2022-07-13 15:48:23Usage:
  command [options] [arguments]

Options:
  -h, --help                     Display help for the given command. When no command is given display help for the list command
  -q, --quiet                    Do not output any message
  -V, --version                  Display this application version
      --ansi|--no-ansi           Force (or disable --no-ansi) ANSI output
  -n, --no-interaction           Do not ask any interactive question
      --profile                  Display timing and memory usage information
      --no-plugins               Whether to disable plugins.
      --no-scripts               Skips the execution of all scripts defined in composer.json file.
  -d, --working-dir=WORKING-DIR  If specified, use the given directory as working directory.
      --no-cache                 Prevent use of the cache
  -v|vv|vvv, --verbose           Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug. . .

これにより、Composer がシステムに正常にインストールされ、システム全体で使用できることが確認されます。

**注:** このサーバーでホストするプロジェクトごとに個別の Composer 実行可能ファイルを用意したい場合は、プロジェクトごとにローカルにインストールできます。 NPM のユーザーは、このアプローチに精通しているでしょう。この方法は、システム ユーザーにソフトウェアをシステム全体にインストールする権限がない場合にも役立ちます。

これを行うには、コマンド php comboser-setup.php を使用します。これにより、現在のディレクトリに composer.phar ファイルが生成されます。./composer.phar コマンドを使用できます。.

Composer がインストールされたので、次の手順を実行します。ワンステップで、Composer を使用して PHP の依存関係を管理する方法を学びます。

ステップ 3 - PHP プロジェクトで Composer を使用する

PHP プロジェクトは外部ライブラリに依存することが多く、これらの依存関係とそのバージョンの管理は難しい場合があります。 Composer は、依存関係を追跡し、他の人が依存関係を簡単にインストールできるようにすることで、この問題を解決します。

プロジェクトで Composer を使用するには、composer.json ファイルが必要です。 composer.json ファイルは、プロジェクト用にダウンロードする必要がある依存関係と、インストールが許可されている各パッケージのバージョンを Composer に伝えます。これは、プロジェクト内の一貫性を維持し、下位互換性の問題を引き起こす可能性のある不安定なバージョンのインストールを避けるために重要です。

このファイルを手動で作成する必要はありません。手動で作成するとエラーが発生しやすく、構文エラーが発生する可能性があります。 composer require コマンドを使用してプロジェクトに依存関係を追加すると、Composer は composer.json ファイルを自動的に生成します。このファイルを手動で編集しなくても、同じ方法を使用して依存関係を追加できます。

使用Composer在项目中安装一个包作为依赖的过程包括以下步骤。

  • 确定应用程序需要什么样的库。
  • 在Packagist.org(Composer的官方软件包库)上研究一个合适的开源库。
  • 选择你想依赖的软件包。
  • 运行composer require ,在composer.json 文件中包含该依赖性,并安装该软件包。

你可以用一个演示应用程序来测试一下。

这个应用程序的目标是将一个给定的句子转换成一个叫做slug的URL友好字符串。slug通常用于将页面标题转换为URL路径,例如本教程中URL的最后部分。

首先导航到你的主目录。

cd ~

然后创建一个目录。将其称为slugify

mkdir slugify

创建完毕后,换到该目录中。

cd slugify

现在是时候在Packagist.org上搜索一个可以帮助生成蛞蝓的软件包。如果你在Packagist上搜索 "slug "这个词,你会得到一个与下面类似的结果。

Packagist Search

列表中每个软件包的右侧会有两个数字。箭头朝下的图标旁边的数字代表该软件包被安装了多少次,而带星形图标的数字代表软件包在GitHub上被加了多少次星。你还可以根据这些数字对搜索结果重新排序。一般来说,安装次数多、星级多的软件包往往更稳定,因为有很多人在使用它们。检查软件包的描述是否相关也很重要,以确保它是你所需要的。

对于这个教程,你需要一个字符串到蛞蝓的转换器。从搜索结果来看,软件包cocur/slugify 是一个很好的匹配,有合理数量的安装和星级。

Packagist上的软件包有一个供应商名称和一个软件包名称。每个包都有一个唯一的标识符(命名空间),其格式与GitHub用于其存储库的格式相同,即 vendor/package.你要安装的库使用命名空间cocur/slugify 。你需要这个命名空间,以便在你的项目中需要该包。

现在你知道了你要安装的软件包,运行composer require ,把它作为一个依赖项包括进去,同时为项目生成composer.json 文件。

composer require cocur/slugify

当Composer下载依赖关系时,你的输出将返回如下。

OutputUsing version ^4.1 for cocur/slugify
./composer.json has been created
Running composer update cocur/slugify
Loading composer repositories with package information
Updating dependencies
Lock file operations: 1 install, 0 updates, 0 removals
  - Locking cocur/slugify (v4.1.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Downloading cocur/slugify (v4.1.0)
  - Installing cocur/slugify (v4.1.0): Extracting archive
Generating autoload files

正如这个输出所表明的,Composer会自动决定使用哪个版本的软件包。如果你现在检查你的项目目录,它将包含两个新文件:composer.jsoncomposer.lock ,以及一个vendor 目录。

ls -l
Outputtotal 12-rw-r--r-- 1 sammy sammy   59 Aug  2 22:19 composer.json-rw-r--r-- 1 sammy sammy 3462 Aug  2 22:19 composer.lockdrwxr-xr-x 4 sammy sammy 4096 Aug  2 22:19 vendor

composer.lock 文件是用来存储每个已安装软件包的版本信息的。它也确保在别人克隆你的项目并安装其依赖项时使用相同的版本。vendor 目录是项目依赖项所在的地方。vendor 文件夹不需要提交到版本控制中,你只需要包括composer.jsoncomposer.lock 文件。

当安装一个已经包含composer.json 文件的项目时,运行composer install ,以便下载项目的依赖项。

接下来,查看版本约束。如果你检查你的composer.json 文件的内容,你会有类似下面的内容。

cat composer.json
Output{
    "require": {
        "cocur/slugify": "^4.1"
    }}

你可能会注意到在composer.json 的版本号之前有一个特殊的字符^ 。Composer支持几种不同的约束和格式来定义所需的软件包版本,以提供灵活性,同时也保持你的项目稳定。自动生成的composer.json 文件所使用的圆点(^)运算符是推荐的运算符,以实现最大的互操作性,遵循语义版本学。在这种情况下,它将4.1定义为最小兼容版本,并允许更新到5.0以下的任何未来版本。

一般来说,你不需要在你的composer.json 文件中篡改版本约束。然而,有些情况可能需要你手动编辑约束。例如,当你所需要的库的一个主要新版本发布时,你想要升级,或者当你想要使用的库不遵循语义版本划分时。

下面是一些例子,让你更好地了解Composer版本约束的工作方式。

约束 意义 允许的版本示例
^1.0 >= 1.0 1.0, 1.2.3, 1.9.9
^1.1.0 >= 1.1.0 1.1.0, 1.5.6, 1.9.9
~1.0 >= 1.0 1.0, 1.4.1, 1.9.9
~1.0.0 >= 1.0.0 1.0.0, 1.0.4, 1.0.9
1.2.1 1.2.1 1.2.1
1.* >= 1.0 1.0.0, 1.4.5, 1.9.9
1.2.* >= 1.2 1.2.0, 1.2.3, 1.2.9

要想更深入地了解Composer的版本约束,请查阅官方文档。

接下来,你将学习如何用Composer自动加载依赖项。

第四步 - 包括自动加载脚本

由于PHP本身不会自动加载类,Composer提供了一个自动加载脚本,你可以把它包含在你的项目中,让自动加载发挥作用。这在处理你的依赖关系时很有帮助。

你唯一需要做的是在任何类实例化之前在你的PHP脚本中包含vendor/autoload.php 文件。这个文件在你添加第一个依赖项时由Composer自动生成。

你可以在你的应用程序中测试它。创建该文件test.php ,并在你喜欢的文本编辑器中打开它。这里使用的是nano

nano test.php

添加以下代码,引入vendor/autoload.php 文件,加载cocur/slugify 依赖关系,并创建一个slug。

test.php

<?php require __DIR__ . &#39;/vendor/autoload.php&#39;; 
use Cocur\Slugify\Slugify;$slugify = new Slugify();echo $slugify->slugify('Hello World, this is a long sentence and I need to make a slug from it!');

保存该文件并退出你的编辑器。如果你使用的是nano ,你可以按CTRL + X ,然后按YENTER 来完成。

现在运行该脚本。

php test.php

这将产生以下输出。

Outputhello-world-this-is-a-long-sentence-and-i-need-to-make-a-slug-from-it

当新版本出来时,依赖关系需要更新,所以你将在最后一步中学习如何处理这个问题。

第5步 - 更新项目的依赖关系

每当你想把你的项目依赖关系更新到最新的版本时,运行update 命令。

composer update

这将检查你在项目中作为需求添加的库的较新版本。如果发现一个新的版本,并且它与composer.json 文件中定义的版本约束兼容,Composer将替换之前安装的版本。composer.lock 文件将被更新以反映这些变化。

你也可以像下面这样指定一个或多个特定的库来更新它们。

composer update vendor/package vendor2/package2

请确保在你更新你的依赖关系后提交你的composer.jsoncomposer.lock 文件的变化,这样无论谁在项目中工作,都可以访问相同的软件包版本。

总结

Composer是每个PHP开发者都应该拥有的强大工具。在本教程中,你在 Debian 11 上安装了 Composer 并在一个项目中使用了它。你现在知道如何安装和更新依赖关系了。

除了提供一个可靠的方法来管理项目的依赖关系外,Composer 还建立了一个新的标准来分享和发现由社区创建的 PHP 包。

以上がDebian11 に Composer をインストールして使用する方法を説明する 4 つのステップ!の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はjuejinで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
作曲家になるための道:実用的なガイド作曲家になるための道:実用的なガイドApr 13, 2025 am 12:11 AM

作曲家になるための手順には次のものがあります。1。ノート、リズム、ハーモニー、メロディーなどの音楽の基本的な要素をマスターします。 2。abletonliveなどの適切な技術ツールを選択します。 3.インスピレーションの獲得、概念、執筆、修正、改善など、作曲のプロセスを理解する。 4.シンプルなメロディーの作成から始めて、ハーモニーなどの複雑なテクニックを徐々に試します。 5.ノート選択やリズム配置などのデバッグ技術を通じて一般的な問題を解決します。 6.テンプレートの使用、バージョン制御、コラボレーションなど、パフォーマンスの最適化とベストプラクティスを適用します。

作曲家:堅牢なPHPアプリケーションを構築するための鍵作曲家:堅牢なPHPアプリケーションを構築するための鍵Apr 12, 2025 am 12:05 AM

Composerは、依存関係管理を簡素化し、開発効率とコードの品質を向上させるため、堅牢なPHPアプリケーションを構築するための重要なツールです。 1)Composerは、Composer.jsonファイルを介してプロジェクトの依存関係を定義し、これらの依存関係を自動的にダウンロードおよび管理します。 2)composer.lockファイルを生成して、依存関係バージョンが一貫しており、ベンダー/autoload.phpを介して自動的に読み込まれていることを確認します。 3)使用の例には、ログライブラリの追加などの基本的な使用法や、バージョンの制約や環境変数管理などの高度な使用法が含まれます。 4)一般的なエラーデバッグ手法には、依存関係の競合とネットワークの問題の処理が含まれます。 5)パフォーマンス最適化の提案には、Composer.Lockファイルの使用と自動負荷の最適化が含まれます。

作曲家の専門知識:誰かを熟練させるもの作曲家の専門知識:誰かを熟練させるものApr 11, 2025 pm 12:41 PM

作曲家を使用するときに熟練するには、次のスキルをマスターする必要があります。1。composer.jsonとcomposer.lockファイルを使用するのに熟練している必要があります。2。作曲家の仕組み、3。マスターコンポーザーのコマンドラインツール、4。基本的および高度な使用法を理解します。

作曲家は何をしていますか?作曲家は何をしていますか?Apr 08, 2025 am 12:19 AM

Composerは、PHPの依存関係管理ツールであり、プロジェクトの依存関係を宣言、ダウンロード、管理するために使用されます。 1)Composer.jsonファイルを介して依存関係を宣言します。2)ComposerInstallコマンドを使用して依存関係をインストールし、3)依存関係ツリーを解析し、Packagistからダウンロードします。4)Autoload.phpファイルを生成して自動荷重を簡素化します。

App Composerとは何ですか?App Composerとは何ですか?Apr 07, 2025 am 12:07 AM

AppComposerは、アプリケーションを構築および管理するためのツールです。 1)事前定義されたコンポーネントをドラッグして構成することにより、アプリケーションの開発を簡素化し、効率を向上させます。 2)開発者は、コンポーネントを定義し、インターフェイスを組み合わせ、ビジネスロジックを定義し、最終的にアプリケーションをレンダリングできます。 3)タスク管理や条件付きレンダリングなど、基本的および高度な使用法をサポートし、柔軟なアプリケーションの構築に役立ちます。

作曲家は何に使用されていますか?作曲家は何に使用されていますか?Apr 06, 2025 am 12:02 AM

作曲家は、PHPの依存関係管理ツールです。 Composerを使用するコアステップは次のとおりです。1)「Stripe/Stripe-PHP」などのComposer.jsonの依存関係を宣言:「^7.0」; 2)ComposerInStallを実行して、依存関係をダウンロードおよび構成します。 3)Composer.LockおよびAutoload.phpを介してバージョンとオートロードを管理します。 Composerは依存関係管理を簡素化し、プロジェクトの効率と保守性を向上させます。

作曲家AIとは何ですか?作曲家AIとは何ですか?Apr 05, 2025 am 12:13 AM

Composeraiは、開発効率と品質を改善するためにコードを生成および最適化するための人工知能ベースのツールです。その機能には次のものが含まれます。1。コード生成:要件に応じて標準を満たすコードスニペットを生成します。 2。コード最適化:既存のコードを分析することにより、最適化の提案を行います。 3。自動テスト:テストケースを生成して、コードの品質を確保します。

AndroidのComposerとは何ですか?AndroidのComposerとは何ですか?Apr 04, 2025 am 12:18 AM

ComposerはAndroidのSurfaceFlingerサービスの一部であり、最終的なディスプレイバッファーに複数のグラフィックスレイヤーを合成する責任があります。 1)グラフィックレイヤーを収集し、2)グラフィックレイヤーを並べ替え、3)グラフィックレイヤーを合成し、4)ディスプレイデバイスへの出力を使用して、アプリケーションのパフォーマンスとユーザーエクスペリエンスを向上させます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい