composerでPHPのプロジェクトを簡単に始める
composerとはなんぞや?
composerはPHPのパッケージの依存関係やバージョン管理を行う仕組みで多くのライブラリがPackagistを通して利用可能です。
詳しいcomposerの記事は以下を参照していただくとして...
composerのautoloadを利用する
composerはパッケージ管理なので、別に公開することが前提ではありません。プライベートなプロジェクトでも普通に使うことができます。
composerを使えば、PSR-0に準拠した名前空間のautoloadも用意されていて便利です。準備に必要なのは以下の作業だけ
composerをインストール
composer.pharをダウンロードしてきます。グローバルではなく個々のプロジェクト毎にインストールできます
$ curl -s http://getcomposer.org/installer | php
さくっとプロジェクトのひな形作成
composer.jsonを作成する必要がありますが、通常はコマンドラインからひな形が作成できますが、欲しいのはpackagistに登録するためではなく自分用の名前空間の登録だけです。
というわけで以下をcomposer.jsonとしてコピペ
{ "repositories": [ { "packagist": false } ], "autoload": { "psr-0": {"Oreore": "src"} } }
Oreoreの部分はあなたのベンダー名をつけてくださいね。
あとは
$ php composer.phar install
するだけで、自前のライブラリは./src/Oreore/Hoge.phpのように書けばautoloadに対応できます。
composerは"packagist": falseを書かないと標準でリポジトリとしてPackagistを見に行こうとするようです。ただ自前のディレクトリ構造を用意したいだけなのにこのPackagistへのアクセスのためにインストールに時間がかかってしまいます。1分以上掛かることもあります。というわけでこの対策のためにfalseを書いています。これを書いておけば1秒も掛かりません。