はじめに
作曲家 プロジェクトが依存する必要なすべてのPHPパッケージを取得し、これらのパッケージを管理できます。これが、プロジェクトの依存関係を追跡するための優れたアプリケーションである理由です。
Composerを使用すると、特定のプロジェクトに必要なライブラリのセットを定義できます。ライブラリを確立した後、ソフトウェアはバージョンと依存関係を識別し、対応するプロジェクトにインストールします。
このチュートリアルでは、Ubuntu16.04にComposerをインストールして使用する方法を学びます。
前提条件
- Ubuntu 16.04 Linuxシステム、注Ubuntu16.04の保守終了は2021年4月です
- UbuntuシステムにインストールされているPHP5.3.2以降
- sudoのユーザーアカウント 特権
- コマンドライン/ターミナルウィンドウへのアクセス( Ctrl + Alt + T )
Ubuntu16.04にComposerをインストールする
ステップ1:ローカルリポジトリの更新
インストール前と同様に、古いパッケージをダウンロードしないように、必ずローカルリポジトリを更新してください。
次のコマンドを使用して、パッケージが最新であることを確認します。
sudo apt-get update
ステップ2:ソフトウェアの依存関係をインストールする
Composerが正しく機能するために必要なサポートソフトウェアをインストールすることから始めます。これらのプログラムのいくつかはすでにシステム上にある可能性があります。それでも、万が一の場合に備えて、すべてのソフトウェア依存関係をインストールするためにコマンドライン全体を実行することをお勧めします。
sudo apt-get install curl php-cli php-mbstring git unzip
必要な依存関係がすでにインストールされている場合は、それらがそれぞれのソフトウェアパッケージの最新バージョンであることを確認してください。
ステップ3:Composerインストーラースクリプトのダウンロード
次に、インストーラースクリプトをダウンロードします。
次のコマンドは、現在いるディレクトリにあるファイルをダウンロードします。
curl -sS https://getcomposer.org/installer -o composer-setup.php
ダウンロードが成功したことを確認するには、 dir
を使用します 作業ディレクトリ内のファイルとフォルダを一覧表示するコマンド。 composer-setup.php
が表示されます。 ファイル、ダウンロードが成功したことを確認します。
ステップ4:ダウンロードの整合性を確認する
次に、インストーラー署名(SHA-384)かどうかを確認します 公式のComposer公開鍵ページにあるSHA-384ハッシュと一致します。
これを行うには、次のコマンドを使用します:
php -r "if (hash_file('sha384', 'composer-setup.php') === 'a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
2つの署名が一致する場合は、次のメッセージが表示されます。インストーラーが確認されました 。
スクリプトが2つの署名の違いを見つけた場合、表示される出力は次のようになります。インストーラーが破損しています 。
この問題を解決するには、Composerインストーラーを再ダウンロードします。
ステップ5:Composerのインストール
インストールスクリプトが確認されたら、Composerのインストールに進みます。
必ず/usr / local / binにComposerをインストールしてください ディレクトリなので、システム全体からアクセスできます。
1.グローバルにUbuntu16.04にComposerをインストールする 、次のコマンドを使用します:
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
インストールが初期化されると、次のメッセージが表示されます。
All settings correct for using Composer
Downloading...
Composer (version 1.9.0) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer
2.次のコマンドを使用してComposerが正しく実行されていることを確認します:
composer
システムは、実行中のバージョンを、その構文および使用可能なオプションとともに表示する必要があります。
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.9.0 2019-08-28 11:45:23
Usage:
command [options] [arguments]
Options:
-h, --help Display this help message
-q, --quiet Do not output any message
-V, --version Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
-n, --no-interaction Do not ask any interactive question
--profile Display timing and memory usage information
--no-plugins Whether to disable plugins.
3.最後に、インストーラーは不要になるため、次のコマンドでインストーラーを削除します。
php –r "unlink('composer-setup.php');"
基本的なComposerの使用法のチュートリアル
Composerは、必要なソフトウェアを考慮し、プロジェクトごとに依存関係を追跡します。また、 composer.json を使用して、複数のバージョンを管理できます。 他のユーザーが同じ環境を作成できるようにするファイル。
ディレクトリがcomposer.lockを介してコピーされた場合 ファイルの場合、 require
を使用して自動的に生成されます コマンド、一貫性を維持します。
以下に、新しいPHPプロジェクトを開始するときにUbuntu16.04でComposerを利用する方法の例を示します。
1.まず、プロジェクトの説明、その依存関係、およびその他の追加情報( composer.json )を含むファイルのプロジェクトルートディレクトリを作成します。 ファイル):
mkdir c_sample
2.次に、新しいディレクトリに移動します:
cd c_sample
3.プロジェクトディレクトリが作成されたら、パッケージをロードできます。利用可能なパッケージのリストを表示するには、 packagist.orgにアクセスしてください。 ウェブサイト。
たとえば、 monolog / monologをダウンロードして使用できます。 テストプロジェクトとしてパッケージ化します。スラッシュの後に表示される情報は、パッケージ名です。 、スラッシュの前のテキストはベンダーです。 。
Ubuntu16.04システムは自動的にcomposer.jsonを作成します ファイルとcomposer.lock 次のコマンドでパッケージをダウンロードする際のファイル:
composer require monolog/monolog
4.ディレクトリの内容を一覧表示して、すべてのファイルが存在するかどうかを確認します。
dir
出力には、 composer.jsonが表示されます。 およびcomposer.lock ファイルとベンダーディレクトリ。
5.次に、composer.jsonファイルを開きます:
cat composer.json
ファイルには、新たに追加された、注意記号付きのモノログソフトウェア( ^ )が含まれている必要があります。 )バージョン番号の横に、ソフトウェアの最小バージョンを示します。
Composerを使用してPHPクラスの自動読み込みを設定する方法
Composerを自動ロードに構成する クラスを使用すると、依存関係の操作を簡素化できます。
1. Linuxテキストエディタを使用して、新しいファイルを作成します(この例では、 composer_sample
という名前になります)。 ):
nano composer_sample.php
2.ファイルに以下を追加します。
<?php
require __DIR__ . '/vendor/autoload.php';
use Monolog\Logger;
use Monolog\Handler\StreamHandler;
// create a log channel
$log = new Logger('name');
$log->pushHandler(new StreamHandler('/~/c_sample/text.log', Logger::WARNING));
// add records to the log
$log->warning('Foo');
$log->error('Bar');
3.次に、 s ave および終了 ファイル。
4.これで、次のコマンドを使用してモノログを自動ロードできます。 :
php composer_sample.php
依存関係の更新
Composerを使用すると、 composer.jsonのすべての依存関係を更新できます 単一のコマンドでファイル:
composer update
ファイルで指定されたバージョンに従って、上記のコマンドは依存関係を更新します。
それらすべてを更新するのではなく、1つまたはいくつかを個別に更新する場合は、次のように入力します。
composer update vendor/package vendor_2/package_2