composer.json
- composer.jsonが必要
- composer.jsonはプロジェクトの依存関係を記述する
- composer.jsonにはその他のメタデータを含めることもできる
依存関係のインストール
1 |
$ composer install |
- 依存関係のインストール後にはcomposer.lockが生成される
- composer.lockにはインストールされたバージョンのリストが記される
- install実行時にcomposer.lockが存在するときは、リストされているバージョンをダウンロードする
- composer.lockを配布することで、チーム内で依存関係を揃えることができる
依存関係の更新
1 2 |
$ composer update $ composer update monolog/monolog //特定の依存関係だけ |
- 最新の依存関係がインストールされる
- composer.lockも併せて更新される
Packagist – Composerリポジトリ
Packagist
https://packagist.org/
オートローディング
- オートロード指定されたライブラリに関しては、vender/autoload.phpが作成される
- vender/autoload.phpをインクルードすることでオートロードされる
1require __DIR__ . '/vendor/autoload.php'; - オートローダーはPSR-4準拠
PSR-4: Autoloader – PHP-FIG
http://www.php-fig.org/psr/psr-4/ - PSR-0にも対応、またComposer独自のオートローダーもある
- composer.jsonにautofieldが追加されたら、vender/autoload.phpを生成しなおす必要あり
- vender/autoload.phpの再生成
1$ composer dump-autoload
参考サイト
Command-line interface / Commands – Composer
https://getcomposer.org/doc/03-cli.md