はじめに
最近、チームで開発することになりPHPのフレームワークのLaravelを使用しているのですが、その時に使用するcomposerが改めて便利だなと思った話。
- composerとは
- composerを使用してみよう
- まとめ
composerとは
composerは依存管理パッケージツールと呼ばれています。どういう意味かというと
Aというライブラリを使用しようとすると、他にBが必要でBを使用するとCが必要でと、どんどん必要なものが増えていきます。
そんな、面倒なことを一気に解決してくれるのがcomposerです。
composerの利点
composer.lockがあるのでチームでの開発が楽になる。composer.lockにはcomposer.jsonに書かれたライブラリを取得するために、どのようなファイルを落としてきたかだまとめられているファイルです。なのでチームで開発する時に、composer installというコマンドを入力すると他のチームと同じ開発の環境にしてくれます。
オートロード機能がある。例えば、ライブラリを使用したいとしてこのファイルとこのファイルを読み込みといったことをしなくてよく。/vendor/autoload.php
を読み込んであげるとそんなめんどくさいことをしなくよくなります。
このように利点がいくつかあります。
composerを使用してみよう
それでは、実際に使用してみましょう。始める方法は沢山あるのですがそのうちの一つを今回はやります。
(composerはあらかじめ自分の環境で使用できる状態にして下さい)
最初に、自分が作業するフォルダに移動しcomposer.jsonというファイルを作成します。
{
"require": {
"phpmailer/phpmailer": "*"
}
}
そして、上記の内容を記述して下さい。
composer.json
まず、composer.json
には自分が取得するライブラリの名前をrequireに記述します。ベンダー名/プロジェクト名:バージョンになります。バージョンには今回はワイルドカードを設定します。
次にコマンドでcomposer install
を入力します。するとフォルダ内にvendorとcomposer.lockが作成されました。
composer install
composer install
は、composer.jsonに記載されている内容もしくはcomposer.lockに記載されている内容に従って、パッケージをインストールします。
composer.lock
composer.lock
はcomposer.jsonにあるライブラリを取得するために、どのようなファイルを落としてきたかが書かれています。
vendor
にはインストールしたライブライが入っています。
後は、自分が作業しているファイルにライブライを読み込んであげることで使用することが出来ます。
<?php
require '/vendor/autoload.php';
# 自分が使用したいライブライを使用
?>
まとめ
このように、composerがあるおかげてチームで開発するのも楽になります。また、依存関係を気にせずに自分の環境にライブラリを落とすことができます。
参考文献