Composerとは 開発環境構築の巻 魁!小野の塾
Composerとはパッケージ管理ツールです
PHPでの開発において、全てのプログラムを自分で書くことはあまりありません。先人が便利な機能を作成してくれていますので、それを利用して機能を構築していきます。
CSVやXML、JSONなどの形式や、テンプレートエンジンなど、便利なツールが沢山あります。
ただ、PHPのバージョン、ライブラリ間のバージョン管理など、かなり面倒になります。
それを解決してくれるのが、Composerです。Nodeならnpm、Rubyならbundlerがあるように、PHPにはComposerがあります。
※Composerのページは、指揮者の色が更新すると変わります。(どうでも良い情報ですが。。。)
Web開発を行うにあたり、PHPではフレームワークを導入することが多くなってきています。
その場合に、フレームワークをインストールするのも、Composerで行うことが多いです。
バージョンを指定すれば、フレームワークが利用しているライブラリも含み、全てをダウンロードして、開発環境を整えてくれます。
利用するにあたり、先にPHPの環境を構築する必要があります。利用環境はWindowsを前提としていますが、まずはXAMPPをインストールしてください。
魁!小野の塾 開発環境構築の巻 XAMPPとは?
魁!小野の塾 開発環境構築の巻 XAMPPインストール
魁!小野の塾 開発環境構築の巻 XAMPPの使い方
Packagist
Composerが見ているメインのリポジトリは、Packagistで、ライブラリのバージョンも含めて、依存関係も管理してあります。
今回はLaravelで利用しているライブラリを簡単に検索してみましょう。
検索ワードに「laravel」と入力して検索してみると、色々なものがあることが分かります。
Laravelのインストール方法としては、「laravel/laravel」を指定しますので、このリポジトリーを見てみます。
v9.3.8では、requiresに以下が以下のようになっています。
- php: ^8.0.2
- guzzlehttp/guzzle: ^7.2
- laravel/framework: ^9.19
- laravel/sanctum: ^3.0
- laravel/tinker: ^2.7
ここで、必用になる内容が書かれており、composerコマンドでlaravelが必用になるパッケージを全てインストールしてくれることになります。
composerコマンドで指定するのは「laravel/laravel」ですが、laravel/frameworkや、guzzlehttp/gazzleもインストールされます。
インストールされたファイルは、プロジェクトのvendorフォルダーにまとめて入るようになり、autoload.phpによりロードされるようになります。