概要

composerとは
ComposerはPHPの依存関係管理のためのツールです。それはあなたがあなたのプロジェクトが依存しているライブラリを宣言することを可能にし、それはあなたのためにそれらを管理(インストール/更新)します。
公式ページを翻訳機にかけたらこんな感じでした。
あのライブラリを使いたいけど、あのライブラリもその中で使われているから必要みたいな時に、一括でやってくれるようです。
認識としては、ライブラリの依存関係を気にせずにインストールできるツールでいいかと思います。
composerを導入する
windows
公式サイトにexeファイルがあるので、それをインストールします。
mac, linuxなど
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
公式に書いてますが、phpコマンドをつかってダウンロードできます。
composer.phar というファイルが上記コマンドを実行したディレクトリにできるので、composerにリネームしてパスが通っている場所に移動しましょう。
composerでライブラリを入れてみる (composer require)
「【郵便番号APIを叩いてみた】PHPでGuzzleを使った(Api通信)」でやりましたが、下記コマンドでインストールできます。
composer require パッケージ名
Carbonを使う場合は下記になります。(時間処理を楽にできるPHPのライブラリです)
composer require nesbot/carbon
そのあとは下記のような感じで、autoload.phpを読んで処理を書いて行きます。
composer requireが返ってこない
composer requireした後に、反応が全くなくて困ってしまいました😅
xdebugでリモートデバッグしたまま、composer requireコマンドを使うと止まったまま返ってこないような状態になるようです。
composer install
requireで取ってくるならinstallはどこで使うの?って思いますよね?
composer requireしたときにcomposer.json, composer.lockファイルができますが、これらを元にインストールします。
composer.lockがある場合はcomposer.lockを元にします。
チームで同じソースをいじっていくときに vendorはアップロードせずに、commposer.json, composer.lockだけをアップロードすればいいということになります。
ソースをクローンしたあとにcomposer installですね。
composer update
composer updateは新しくライブラリを入れたときなどでcomposer.lockを更新したい場合に使うようです。
composer remove
ライブラリを取り除いてくれるコマンドです。
composer require パッケージ名
でいいみたいです。(使ったことがないです。。)
参考URL
以上、既出&薄いですがまとめてみました。
下記も参考にしてみてください。
・PHP開発でComposerを使わないなんてありえない!基礎編
・composer install と composer updateの違い
・composer.json、composer.lockって何なの?という人向けのまとめ
・Composer でパッケージの削除は composer remove が良いと思ったらそうでも無かった
コメント