この記事にはプロモーションが含まれています。

【初心者向け】Composerの使い方を丁寧に解説!【PHP】

【初心者向け】Composerの使い方を丁寧に解説!【PHP】

ケケンタ

Composerってよく見かけるけど、イマイチ使い方がわからないな……

今回はこうしたお悩みをお持ちの方へ向けて

PHPのWebアプリ開発にComposerを導入して
パッケージライブラリを使用する方法

を解説します。

Composerのインストールがお済みでない場合、まずは以下の記事をご覧ください。




ケケンタ

ケケンタのITブログでは、WebアプリPHPLaravel)やWeb制作WordPressコーディング)について情報を発信しています。
学習中の方や実務をされている方など多くの方にアクセスいただいていますので、ぜひほかの記事も参考にしてみてください!


運動不足、気になっていませんか?

もしプログラミング学習やお仕事で運動不足が気になっているなら
連続屈伸運動がおすすめです!

ボタンにカーソルを合わせるだけ
カウントダウンが始まるタイマーをご用意してみました!

ケケンタ

無理のない範囲で、ぜひ隙間時間に屈伸運動を取り入れてみて下さい!

タイマースタート

3:00

※運動不足だと連続3分で取り組んでもかなり息が切れます
(僕は加えて気分もちょっと悪くなりました……)
絶対にご無理の無い範囲でお取り組みください!


目次

Composerがインストールされているかの確認

念のため、まずはComposerがインストールされているかどうかを確認してみましょう。

STEP
コマンドプロンプトを起動する

Windowsキーを押してから検索窓にcmdと入力して、Enterキーを押します。

すると、コマンドプロンプトが起動します。

コマンドプロンプトの起動
コマンドプロンプトの起動
STEP
「composer」コマンドを実行

続いてcomposerと入力して、Enterキーを押します。

数秒ほど待って、以下のような表示が出ればComposerは無事にインストールできています。

Composerインストール成功確認画面
Composerインストール成功確認画面

もしComposerのインストールができていなければ、まずは以下の記事をご覧ください。

Composerを開発プロジェクトで使用する

Composerでパッケージを導入する大まかな手順は以下の通りです。

Composerでパッケージを導入する手順
  • composer.jsonファイルを新規作成する
  • composer.jsonファイルにインストールしたいパッケージ名:バージョンを記載する
  • ターミナルでcomposer installコマンドを実行する
  • パッケージを使用したいファイルでautoload.phpファイルを読み込む
  • 使用する「パッケージのクラス」を読み込む
STEP
composer.jsonファイルを新規作成する

Composerを導入したいプロジェクトディレクトリ内にcomposer.jsonファイルを新規作成します。

(例)TODOアプリ開発用に「todo」ディレクトリを用意している場合

STEP
composer.jsonにインストールしたいパッケージ名:バージョンを記載する

以下はログを取得するのに便利な「monolog」というパッケージライブラリをインストールする場合の記述です。

{
    "require": {
        "monolog/monolog": "*"
    }
}

バージョンを「*」にすることで、その時点での最新バージョンをインストールしてくれます。

パッケージ名の表記最新以外のバージョンについては、該当するパッケージ(今回だと「monolog」)のGithubのページでご確認いただけます。
https://github.com/Seldaek/monolog

パッケージ名の表記

パッケージにもよりますが、ページを少し下へスクロールした辺りにある「README」の最初の方に記載されていることが多いです。

パッケージ名の表記
パッケージ名の表記

バージョン確認(最新以外のバージョンを使用したいとき)

https://github.com/Seldaek/monologの右側メニューにバージョン情報が記述されています。

パッケージバージョンの確認
パッケージバージョンの確認
STEP
ターミナルで「composer install」コマンドを実行する

プロジェクトディレクトリ内でターミナルを起動し、composer installコマンドを実行します。

Windows11をお使いの場合、
プロジェクトディレクトリ内で「右クリック」→「ターミナルで開く」をクリックする
とターミナルを起動することができます。

プロジェクトディレクトリ内でターミナルを起動
プロジェクトディレクトリ内でターミナルを起動

composer installを実行

composer installを実行
composer installを実行

「vendor」ディレクトリと「composer.lock」ファイルが
作成されていれば成功

composer installの実行結果
composer installの実行結果

composer.lockファイルについて詳しく知りたい方は以下の記事をご覧ください。

STEP
パッケージを使用したいファイルで「autoload.php」ファイルを読み込む

ここまでの手順で、Composerが自動的にパッケージをプロジェクトディレクトリ内にインストールしてくれました。

あとはパッケージを使用したいファイル内にautoload.phpファイルを読み込めばOKです。

autoload.php(オートロード)とは?

autoload.phpファイルとは、Composerの機能のひとつ「オートロード」を使用するためのファイルです。

通常、PHPで何らかのパッケージを使用する際には以下のように個別にファイルを読み込むコードを記述する必要があります。

require_once "hogehoge.php";

しかし、Composerの「オートロード」を使用することで、各パッケージの読み込みが自動的に行なわれるため、上記のようなコードを書く手間や書き忘れが防げます。

具体的には、パッケージを使用したいファイルの冒頭で以下のように記述をします。

require_once 'vendor/autoload.php';

autoload.phpファイルまでのパスは、パッケージを使用したいファイルを起点とした相対パスで記述しています。

STEP
使用する「パッケージのクラス」を読み込む

最後に、使用する「パッケージのクラス」をuseを用いて読み込みます。

以下はMonologを使用するときの一例
※実際には、実装したい機能に合わせて必要なクラスを読み込んでください。

require_once 'vendor/autoload.php';

use \Monolog\Logger;
use \Monolog\Handler\StreamHandler;

これでパッケージのクラスを利用して実装を進められるようになりました!

ケケンタ

以上が開発プロジェクトでComposerを利用する流れです!

ここまでの解説についてひとつ注意点をあげると、上記の流れはプロジェクトごとに行う必要があります。

コンピュータやサーバへComposerをインストールするのは一度だけでOKですが、実際にComposerを使用してパッケージ管理を行うときは、上記の手順を踏んでプロジェクトごとにComposerを導入する必要があります

(すでに分かっている方にとっては「何を言っているんだ……?」と、逆に混乱を招きかねないことは重々承知しているのですが、僕が初めてComposerを使用したときに戸惑った部分だったため、初心者の方向けに念のため補足させていただきました)

Composerを利用してパッケージを追加・更新・削除する方法

Composerでは、composer installコマンドを実行するとcomposer.lockファイルが作成されます。

composer.lockファイルとは?

composer.lockファイルとは、Composerで実際に読み込んでいるパッケージの情報(バージョンなど)が記述されているファイルです。

そのプロジェクト内で初めてcomposer installコマンドを実行すると、composer.jsonファイルが参照され、composer.lockファイルとvendorディレクトリが自動作成されます。

しかし、composer.lockファイルがある状態でcomposer installコマンドを実行すると

Composerはcomposer.jsonファイルは参照せず、composer.lockファイルを利用してパッケージのインストールを行います。

これはつまり、composer.jsonファイルを修正してcomposer installコマンドを実行しても、その修正内容がプロジェクトに反映されないことを意味します。

ケケンタ

それなら、どうすればパッケージの追加・更新・削除ができるの……?

という点を、本章でご紹介します。

Composerでパッケージの「追加・更新・削除」をするときはコマンドを使う

一度composer installコマンドを実行してcomposer.lockファイルが作成されたあとは

コマンドを使用してパッケージの追加・更新・削除を行います。

パッケージを「追加」する

パッケージを追加するときはrequireコマンドを使用します。

コマンドの形式

composer require パッケージ名

(例)intervention/imageを追加する

composer require intervention/image

(例)intervention/imageを追加する(バージョンを指定)

composer require intervention/image:3.1.2

上記によってパッケージ「intervention/image」が追加され、composer.jsonファイルも自動的に修正されます。

パッケージを「削除」する

パッケージを削除するときはremoveコマンドを使用します。

ただし、削除対象のパッケージに依存するパッケージは削除されずに残ってしまう点に注意してください。
例えば、パッケージAを削除しても、Aに依存してインストールされたパッケージBは削除されません。

参考:Composer でパッケージの削除は composer remove が良いと思ったらそうでも無かった[Qiita]

コマンドの形式

composer remove パッケージ名

(例)intervention/imageを削除する

composer remove intervention/image

パッケージを「更新」する

パッケージを削除するときはupdateコマンドを使用します。

コマンドの形式

composer update パッケージ名

(例)intervention/imageを更新する

composer update intervention/image

どのパッケージが更新されるかを事前に確認するには--dry-runオプションを利用します。

composer update --dry-run パッケージ名

これにより、更新されるパッケージを事前に確認することが可能です。

Composerを活用してPHP開発を効率化しよう!

以上がComposerの基本的な使用方法です。

ComposerはPHPのパッケージライブラリを自動で管理してくれる便利なツールです。

Composerを利用することで、PHP開発にパッケージを導入するのが簡単になり、結果的に開発効率が向上します。

初心者の方にとってはハードルが高い側面もあるかとは思いますが、まずはローカル環境で試すなどして、少しずつ慣れていくことをおすすめします。

ケケンタ

脱初心者を目指すならComposerの利用は欠かせません。
この記事をご参考に、ぜひ挑戦してみてください!

当ブログではPHPやWordPress、Web制作に関する情報を発信しています。

ご興味のある方は、ぜひほかの記事もご覧いただけるとうれしいです!

また、もしもPHPの独学に限界を感じているなら、一度スクールを検討してみるのも良いかもしれません。

無料でPHPが学べるプログミングスクール

【初心者向け】Composerの使い方を丁寧に解説!【PHP】のアイキャッチ画像

この記事が気に入ったら
フォローしてね!

この記事が良いと思ったらシェアしてね!

コメント

コメントする

CAPTCHA


目次