Composerとは
Composerは、PHPプロジェクトが利用するライブラリとバージョンを管理するツールです。必要なパッケージは composer.json、実際に固定されたバージョンは composer.lock に記録されます。
composer.json→Composerが依存関係を解決→vendorへインストール
最初の準備
公式の手順でComposerをインストールしたら、プロジェクトのフォルダーで確認します。
バージョン確認COMMAND
composer --version対話形式で composer.json を作る場合は、次のコマンドを使います。
初期化COMMAND
composer initライブラリを追加する
例として、日付操作ライブラリCarbonを追加します。パッケージ名とバージョン条件が設定ファイルへ記録されます。
パッケージ追加COMMAND
composer require nesbot/carbonPHPから利用PHP
require __DIR__ . '/vendor/autoload.php';
use Carbon\Carbon;
echo Carbon::now()->format('Y年m月d日 H:i');ポイント Packagistでパッケージの説明、更新状況、必要なPHPバージョンを確認してから導入しましょう。
自作クラスを自動で読み込む
PSR-4形式を設定すると、自作クラスをファイルごとに require せず利用できます。
composer.jsonJSON
{
"autoload": {
"psr-4": {
"App\\": "src/"
}
}
}設定を反映COMMAND
composer dump-autoloadApp\Service\Mailer クラスなら、src/Service/Mailer.php に配置します。名前空間とディレクトリ構造を対応させるのがポイントです。
よく使うコマンド
| コマンド | 役割 |
|---|---|
composer install | lockファイルに固定された構成を再現 |
composer update | 条件内で依存関係を更新しlockも更新 |
composer require 名前 | パッケージを追加 |
composer remove 名前 | パッケージを削除 |
composer outdated | 更新可能なパッケージを確認 |
composer audit | 既知の脆弱性などがある依存パッケージを確認 |
違いに注意 普段の環境構築や本番配備では
install、依存バージョンを更新すると決めたときに update を使います。composer outdated で更新候補を確認し、composer audit でインストール済みパッケージに既知のセキュリティ上の問題などがないか定期的に確認しましょう。問題が見つかった場合は内容を調べ、テストを行ったうえで安全なバージョンへの更新を検討します。
プロジェクトでの管理
Gitへ含めるもの
composer.jsonとcomposer.lockはコミットするvendor/は通常コミットせず、環境ごとにcomposer installする- 導入後はテストを行い、更新内容を確認する
composer auditで脆弱性情報などを定期的に確認する
これでPHPの基礎から、データ保存、ログイン状態、ライブラリ管理まで一通り学べました。小さなWebアプリを完成させ、必要に応じて公式ドキュメントを引く習慣をつけましょう。
