コンポーザーにすべての依存関係を管理させることで、PHPプロジェクトを簡単に作成できます
Composerは、PHPの依存関係管理ツールです。これは、次のような従来のパッケージマネージャーとは異なります。 apt
と dnf
、システム全体のレベルでパッケージとライブラリをグローバルにインストールするのではなく、プロジェクトごとに個別に処理するように。したがって、これは依存関係マネージャーであり、パッケージマネージャーではありません。
音楽作曲家がたくさんの楽器を取り、コンサートで完璧に機能するようにアレンジするのと同じように、Composer for PHPは、たくさんのライブラリとフレームワークを取り、それらをパッケージ化して連携させ、PHPプロジェクトを構築するための強固な基盤を構築します。作曲。
前提条件
ルート以外のUbuntu20.04システムにアクセスする必要があります sudo
ユーザーアカウント。さらに、Composerのいくつかの依存関係をインストールする必要があります。 php-cli
ターミナルでPHPスクリプトを実行するには、 解凍
Composerがダウンロードしたパッケージを抽出し、 カール
Composerインストールスクリプトをダウンロードするには
必要なすべてのパッケージをインストールするには、updateコマンドを実行してUbuntuパッケージリストを更新します。
sudo apt update
次に、をインストールします php-cli
, 解凍
と カール
次のコマンドを使用します。
sudo apt install php-cli unzip curl
インストールの確認を求めるメッセージが表示されたら、を押します Y
次にEnterキーを押します。すべての前提条件を満たした後、Composerのインストールを続行できます。
Composerをダウンロードしてインストールします
Composerは、コマンドラインからダウンロードしてマシンにインストールするための優れたPHPスクリプトを提供します。使用する必要があります カール
このスクリプトをダウンロードするには、セキュリティ上の理由からその信頼性を確認してから、実行してComposerをインストールします。
端末がホームディレクトリで開いていることを確認してから、を使用してインストールスクリプトをダウンロードします。 カール
:
cd〜curl -sS //getcomposer.org/installer -o composer-setup.php
次に、ダウンロードしたインストールスクリプトのSHA-384ハッシュを、Composerの公開鍵/チェックサムページにあるものと照合して、本物であることを確認する必要があります。これを行うには、Composerの公開鍵ページからSHA-384ハッシュを取得し、シェル変数に格納します。
Hash = `curl -sS // composer.github.io / installer.sig`
次に、次のコマンドを実行して、ハッシュを取得して変数に格納したことを確認します。
エコー$ハッシュ
ターミナルから次のようなランダムな文字列の出力を取得する必要があります。
出力: e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a
次に、Composerが提供する次のPHPコードを実行して、インストールスクリプトの信頼性を確認します。
php -r "if(hash_file( 'SHA384'、 'composer-setup.php')=== '$ Hash'){echo 'インストーラー検証済み';} else {echo 'インストーラー破損'; unlink( 'composer-setup .php ');} echo PHP_EOL; "
出力: インストーラーの検証
次のような他の出力が表示された場合 インストーラーが破損しています
、すると、スクリプトが破損していて、安全に実行できないことがわかります。 curlを使用してスクリプトを再度ダウンロードし、ターミナルでPHPコードを再度実行して、インストールスクリプトを確認します。
インストーラーを正常に確認したら、インストールを続行できます。 Install the Composerは、単一のプロジェクトに対してグローバルまたはローカルにインストールできます。
Composerをグローバルにインストールする
Composerをシステム全体のコマンドとしてグローバルにインストールするには 作曲
、次のコマンドを実行します。
sudo php composer-setup.php --install-dir = / usr / local / bin --filename = composer
Composerはにインストールされます / usr / local / bin
Ubuntu 20.04システムのディレクトリに、次のような出力が表示されます。
出力: Composerのダウンロードを使用するためのすべての設定が正しい... Composer(バージョン1.10.7)は次の場所に正常にインストールされています:/ usr / local / bin / composer使用:php / usr / local / bin / composer
次のコマンドを実行して、Composerが正しくインストールされ、機能していることを確認します。
作曲
出力: ______ / ____ / ___ ____ ___ ____ ____ ________ _____ / / / __ \ / __ `__ \ / __ \ / __ \ / ___ / _ \ / ___ / / / _ / / / / _ /(__)__ / / \ ____ / \ ____ / _ / / _ / / _ / .___ / \ ____ / ____ / \ ___ / _ / / _ / Composerバージョン1.10.72020-06- 03 10:03:56使用法:コマンド[オプション] [引数]
これで、Ubuntu20.04システムにcomposerが正常にインストールされました。これで、Composerを使用して、PHPプロジェクトの依存関係をすぐに管理、更新、およびインストールできるようになりました。
Composerをローカルにインストールする
Composerをローカルにインストールすると、システム全体のレベルでComposerをインストールする権限がない場合や、Composerを単一のプロジェクト専用にする場合に便利です。 Composerをローカルにインストールするには、次のコマンドを実行します。
phpcomposer-setup.php
上記のコマンドは、現在のディレクトリにという新しいファイルを作成します composer.phar
。 Composerの機能を使用するには、このファイルをプロジェクトのルートフォルダーに移動する必要があります。このファイルは、以下に示すコマンドを使用して実行できます。
phpcomposer.phar
作曲家の基本
これで、Ubuntu 20.04マシンにComposerがインストールされたので、Composerの基本をいくつか見てみましょう。 Composerは、依存関係の簡単なインストールと更新を容易にすることを目的としており、そうすることで、プロジェクトのルートディレクトリに多くのファイルを作成します。 Composerを使用して依存関係を管理するプロジェクトのディレクトリ構造を見てみましょう。
Composerプロジェクトのルート構造:ProjectRoot / ├──composer.json├──composer.lock├──Project.php├── composer.phar * Composerをローカルにインストールした場合のみ└── ベンダー ├──autoload.php├── 作曲 │├──ClassLoader.php│├──ライセンス│├──autoload_classmap.php│├──.....├──......。
- The
composer.json
プロジェクトのルートディレクトリにあるファイルには、プロジェクトに必要な依存関係(パッケージ)に関するすべての情報が格納されています。 - The
composer.lock
プロジェクトに対してバージョンロックされているパッケージに関する情報を保持します。 ベンダー
すべてのパッケージが保存されているディレクトリであり、次のようないくつかのPHPスクリプトもあります。autoload.php
、ベンダーディレクトリへのパッケージの自動インクルードを容易にします。- 最後に、Composerをローカルにインストールした場合は、
composer.phar
パッケージをインストールするためのプロジェクトディレクトリ内のファイル。
これらのファイルはすべて、を使用すると作成されます 作曲
また phpcomposer.phar
プロジェクトのパッケージを初めてダウンロードしてインストールするコマンド。それでは、デモプロジェクトを作成してComposerの動作を見てみましょう。
Composerを使用して最初のプロジェクトを作成する
最初のステップは、プロジェクトのルートディレクトリを作成することです。したがって、次のコマンドでルートディレクトリを作成します。 mkdir
コマンドを実行し、を使用してナビゲートします CD
指図:
mkdir〜 / ComposerDemo cd〜 / ComposerDemo
次に、デモプロジェクトのビルドに必要なパッケージ/ライブラリを見つけてインストールする必要があります。 Packagistは、Composerとともにインストールできる公開されているすべてのPHPパッケージを一覧表示するメインのComposerリポジトリです。
この例では、次のようなPHPパッケージを使用します。 Cakephp / chronos
、これは日付と時刻の単純なAPI拡張機能です。したがって、新しいComposerプロジェクトを生成し、Chronosパッケージをインストールするには、次のコマンドを実行します。
作曲家はcakephp / chronosが必要です
出力: Cakephp / chronosにバージョン^ 2.0を使用する./composer.jsonが作成されましたパッケージ情報を含むcomposerリポジトリのロード依存関係の更新(require-devを含む)パッケージ操作:1インストール、0更新、0削除-cakephp / chronos(2.0.5 ):ダウンロード(100%)ロックファイルの書き込みオートロードファイルの生成
The 必須
オプションは、必要なパッケージをフェッチしてインストールし、次のようなファイルとディレクトリを生成します。 composer.json
, composer.lock
と ベンダー
プロジェクトのルートディレクトリにあります。あなたはそれを見るでしょう Cakephp / chronos
に追加されます composer.json
次のコマンドを実行した場合:
猫composer.json
出力: {"require":{"cakephp / chronos": "^ 2.0"}}
次に、デモプロジェクトでChronosを利用し、次のPHPファイルを開いて作成します。 demo.php
を使用して ナノ
:
nano demo.php
次に、次のコードをに追加します demo.php
、を含む2行目 ベンダー/autoload.php
プロジェクト用にインストールされているすべてのパッケージとライブラリを自動的にロードするComposerファイルです。を押してファイルを保存します Ctrl + O
次に、を押してnanoエディターを終了します。 Ctrl + X
.
を実行します demo.php
次のコマンドを実行します。
php demo.php
出力: 今:2020-06-23 17:07:45
今後、プロジェクトのパッケージとライブラリを更新する必要がある場合は、次のコマンドを実行するだけです。
作曲家のアップデート
上記のコマンドは、インストールされているパッケージの新しいバージョンをチェックし、プロジェクトとその相互依存ライブラリを壊すことなく安全に更新します。
Ubuntu 20.04マシンにComposerをインストールする方法と、Composerについて知っておく必要のある基本事項について説明しました。これで、Packagistで検索して必要なパッケージを追加することにより、新しいプロジェクトの構築を試みることができます。 Composerとそのオプションについて詳しく知りたい場合は、Composerのオンラインドキュメントページにアクセスしてください。