この記事は最初に公開されました:[https://www.itcoder.tech/posts/how-to-install-and-use-composer-on-ubuntu-20-04/](https://www.itcoder.tech/posts/how-to-install-and-use-composer-on-ubuntu-20-04/)
ComposerはPHP依存関係マネージャーです(Node.jsのnpmまたはPythonのpipに似ています)。
Composerは、プロジェクトが依存するすべてのPHPパッケージをプルし、それらを管理します。これは、Laravel、Symfony、Drupal、Magento 2など、すべての最新のPHPフレームワークおよびプラットフォームで使用されます。
このガイドでは、Ubuntu20.04にComposerをインストールして使用する方法について説明します。
Composerをインストールする前に、システムに必要な依存関係がインストールされていることを確認してください。
sudo apt update
sudo apt install wget php-cli php-zip unzip
Composerは、Composerのインストールに使用できるPHPで記述されたインストーラーを提供します。 wget
を使用してインストーラーをダウンロードします。
wget -O composer-setup.php https://getcomposer.org/installer
上記のコマンドは、ファイルを現在のフォルダーに composer-setup.php
として保存します。
Composerは単純なCLIアプリケーションファイルであり、グローバルにインストールすることも、プロジェクトの一部としてインストールすることもできます。グローバルインストールには、sudo権限が必要です。
/ 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.7) successfully installed to:/usr/local/bin/composer
Use it: php /usr/local/bin/composer
これで、端末で「composer」を実行してComposerを使用できます。
sudo php composer-setup.php --install-dir=/path/to/project
これにより、プロジェクトのルートディレクトリにある composer.phar
という名前のファイルがダウンロードされます。 Composerを使用するには、プロジェクトディレクトリに切り替えて、 phpcomposer.phar
を実行します。
新しいComposerバージョンが利用可能になったら、次のコマンドを使用してアップグレードできます。
sudo composer self-update
ComposerがUbuntuシステムにインストールされたので、Composerを使用してPHPプロジェクトを作成する方法を見てみましょう。
最初のステップは、プロジェクトのルートディレクトリを作成し、次のディレクトリに切り替えることです。
mkdir ~/my-first-composer-project
cd ~/my-first-composer-project
この例では、 carbon
というPHPパッケージを使用してサンプルアプリケーションを作成し、現在の時刻を出力します。
次のコマンドを実行して、新しいComposerプロジェクトを初期化し、carbonパッケージをインストールします。
composer require nesbot/carbon
出力:
Using version ^2.35for nesbot/carbon
. /composer.json has been created
Loading composer repositories withpackage information
Updating dependencies(including require-dev)
Package operations:5 installs,0 updates,0 removals
- Installing symfony/translation-contracts(v2.1.2):Downloading(100%)- Installing symfony/polyfill-php80(v1.17.0):Downloading(100%)- Installing symfony/polyfill-mbstring(v1.17.0):Downloading(100%)- Installing symfony/translation(v5.1.2):Downloading(100%)- Installing nesbot/carbon(2.35.0):Downloading(100%)
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とすべての依存パッケージをインストールしました。
プロジェクトディレクトリを一覧表示すると、2つのファイル composer.json
と composer.lock
が含まれており、 vendor
ディレクトリがあります。
ls -l
- rw-rw-r--.1 vagrant vagrant 60 Mar 2718:05 composer.json
- rw-rw-r--.1 vagrant vagrant 11135 Mar 2718:06 composer.lock
drwxrwxr-x.6 vagrant vagrant 82 Mar 2718:06 vendor
vendor
は、プロジェクトに依存するソフトウェアパッケージが保存されているディレクトリです。
composer.lock
は、インストールされているすべてのパッケージとそのバージョン番号を保持し、プロジェクトを指定されたバージョンにロックするファイルです。
composer.json
は、PHPの依存関係やその他のメタデータを含むPHPプロジェクトを記述するために使用されるファイルです。
Composerを介してインストールできるすべてのPHPパッケージは、[Packagist](https://packagist.org/)にリストされています。
Composerには自動的にロードする機能があり、 require
および include
宣言の代わりにPHPクラスを使用できます。
testing.php
という名前のテストファイルを作成し、次のコードを追加します。
<? php
require __DIR__ .'/vendor/autoload.php';
use Carbon\Carbon;printf("Now: %s", Carbon::now());
コードを1行ずつ分析してみましょう。
/ vendor / autoload.php
ファイルはComposerによって自動的に生成され、すべてのライブラリを自動的にロードできます。
次の行は Carbon
の関連付けを作成し、最後にCarbonの now
メソッドを使用して現在の時刻を出力します。
次のコマンドを入力して、スクリプトを実行します。
php testing.php
出力は次のようになります。
Now:2020-06-1720:41:04
後で、PHPパッケージをアップグレードする場合は、次のコマンドを実行するだけです。
composer update
上記のコマンドでは、インストールされているすべてのパッケージに新しいバージョンがあるかどうかを確認し、新しいバージョンがある場合は、Composerがパッケージをアップグレードします。
ComposerをUbuntu20.04にインストールする方法と、Composerを使用して基本的なPHPプロジェクトを作成する方法を示しました。
Composerの詳細については、[Composer公式ドキュメントページ](https://getcomposer.org/doc/)にアクセスしてください。
ご不明な点がございましたら、以下の方法でお問い合わせください。
WeChat:
WeChatグループ:上記のWeChatを追加し、WeChatグループにコメントします
QQ: 3217680847
QQグループ:82695646
Recommended Posts