FuelPHP 1.xのモデルファイルをPSR準拠に変更する
FuelPHP 1.xではファイル名はすべて小文字という規約があるのですが、モデルのファイル名をやっぱりStudlyCapsにしたくなったので変更してみました。
今回は、FuelPHPの通常のモデルを配置するclasses/modelはそのままに、別にclasses/Domainフォルダを作成し、その下だけを対象とします。
composer.jsonの変更
プロジェクトトップのcomposer.jsonにautoloadを追加します。
以下は、モジュールMymoduleのDomainフォルダ以下をPSR-4に指定しています。
"autoload": {
"psr-4": {
"Mymodule\\Domain\\": "fuel/app/modules/mymodule/classes/Domain/"
}
}
composer.jsonを変更したので、ComposerのAutoloaderを更新します。
$ composer dump-autoload
これで準備OKです。
クラス名とそのファイル名
fuel/app/modules/mymodule/classes/Domainフォルダ以下はPSR-4に従ってオートロードできるようになっています。ファイル名とクラス名の大文字小文字を一致させることができ、CampaignRepositoryクラスのようなクラス名が使えます。
例えば、\Mymodule\Domain\Specification\OpenCampaignSpecificationクラスなら、ファイルは
- app/modules/mymodule/classes/Domain/Specification/OpenCampaignSpecification.php
になります。
Date: 2014/06/17