Composerの覚書

公式サイト

目次

  1. Composerの概要
  2. Windows環境でcomposerコマンドを使えるようにする【2020年】
  3. Composerの入手
  4. composer.pharとは
  5. composer.pharはどこに配置すべきか
  6. ライブラリをインストールする
  7. composer.pharをコマンドでインストール
  8. ライブラリを更新する
  9. ライブラリをプロジェクトに組み込む
  10. 推奨:リポジトリ管理から外す
  11. composerをWindowsで手軽に動かすセット
  12. composer.pharのアップデート

Composerの概要

Composerはサードパーティ製ライブラリをpackagist.orgというサイトから取ってきて、指定フォルダに一括インストールするプログラムである。
プロジェクトへの組み込みも1行のコードで組み込め、非常に簡単である。
packagist.orgだけでなく、PEARやGitHubからインストールすることも可能である。

Windows環境でcomposerコマンドを使えるようにする【2020年】

  1. 公式サイトからComposer-Setup.exeをダウンロード。
  2. Composer-Setup.exeを普通にインストール。
  3. インストール途中でPHPの実行プログラムを指定する必要がある。
    xamppの場合、「C:\xampp\php\php.exe」を指定。
  4. インストールが終わったら、composerコマンドがGit Bashやコマンドプロンプトで仕えるようになる。

Composerの入手

公式サイトからComposer-Setup.exeをダウンロードする。
Composer-Setup.exeを実行すると「C:\ProgramData\ComposerSetup\bin」にいくつかのファイルされる。
必要なのは「composer.phar」のみ。

composer.pharとは

composer.pharとはComposerの本体であり実行ファイルである。
コマンドプロンプトでphpコマンドを通して動かす。

composer.pharはどこに配置すべきか?

自由に配置できる。
ただし、composer.pharの配置場所はライブラリのインストール場所でもある。
CakePHPの場合、appフォルダと同じ階層にあるvendorsフォルダにcomposer.phar配置したほうがよい。

ライブラリをインストールする

各種サードパーティ製のライブラリをインストールする手順

installコマンドは1回のみ

installを1回実行後、もう一度実行するとエラーが表示されインストールできない。
もう一度インストールするにはupdateコマンドを使うか、composer.lockとインストールしたライブラリを削除してからinstallコマンドを実行する。

composer.pharをコマンドでインストール

インストールとはいっても、composer.pharファイルをWEBから取ってくるだけ。
まず、cdコマンドでcomposer.pharを配置するディレクトリに移動する。

Windows環境でGit bashのターミナルを使うと、ttyなんとかのエラーが出る。 その場合、下記のコマンドを実行すると解決する。
	$ exec winpty bash
下記のPHPコマンドにて、composer.pharをインストール(入手)する。
	$ php -r "readfile('https://getcomposer.org/installer');" | php
cdコマンドで移動したディレクトリに入手したcomposer.pharファイルが配置される。

ライブラリを更新する

composer.lockが作成されている状態でないと実行できない。
composer.lockはinstallコマンドを実行したときに作成される。

以下のコマンドでライブラリを更新する
C:\xampp\php\php.exe composer.phar update

指定ライブラリだけを更新する場合
C:\xampp\php\php.exe composer.phar update phpunit/phpunit

ライブラリをプロジェクトに組み込む

autoload.phpを呼び出すだけである。
以下のソースコードを書くだけで、インストールしたすべてのライブラリが使用可能になる。
App::import('vendor', 'vendor/autoload');

CakePHPならbootstrap.phpに記述してもよい。

推奨:リポジトリ管理から外す

Gitなどプロジェクトをリポジトリ管理している場合、 インストールしたライブラリをリポジトリ管理から外すこと。
各種ライブラリをバージョンアップしたとき、リポジトリの更新情報に多数変更がでるためである。

Eclipse + Git でリポジトリ管理外にする方法

  1. EclipseのPHP Explorerでリポジトリ管理外にするファイルまたはフォルダを右クリックする。
  2. 「Team」→「Ignore]と操作する。
  3. 以上でリポジトリ管理外になる。

composerをWindowsで手軽に動かすセット

composer-set.zip

composer-set.zipの中身
ファイル名説明
composer.json インストールするライブラリの情報を記述する。
composer.phar composerの本体
install.bat インストールを実行するバッチファイル。
このバッチファイルが存在する同じディレクトリにvendorフォルダを作成し、そこに各種ライブラリが配置される。
インストールするとcomposer.lockファイルが作成される。再度、インストールしなおす場合、composer.lockファイルを削除すること
update.bat ライブラリを更新する

composer.pharのアップデート

C:\xampp\php\php.exe composer.phar self-update
「composer-temp.phar」がカレントディレクトリに作成される。
composer-temp.pharのファイル名をcomposer.pharに書き換え、更新完了。