CodeIgniterの開発環境をComposerで構築する方法

CodeIgniterを扱うのにいちいち環境構築のやり方を調べるのが面倒なので、まとめていきます。

今回のCodeIgniterの環境構築で行うのは、以下の2つ。

  • Composerを使ってCodeIgniterをインストールする
  • CodeIgniterでPHPUnitを使えるようにする

開発環境

僕の開発環境は以下の通りです。

  • MacOS 10.14.6
  • Composer version 1.9.1
  • PHP 7.4.1

CodeIgniterの環境構築方法

結論から言うと、以下のコマンドを順番に実行すれば環境構築は完了します。

composer create-project kenjis/codeigniter-composer-installer codeigniter
cd codeigniter
composer require phpunit/phpunit --dev
composer require kenjis/ci-phpunit-test --dev
php vendor/kenjis/ci-phpunit-test/install.php --from-composer
composer require kenjis/codeigniter-cli:1.0.x@dev --dev

上記のコマンドでは何をしているのか?

以下は、先ほどのコマンドが何をしているかを解説していきます。

一行目のcomposer create-project kenjis/codeigniter-composer-installer codeigniterは、CodeIginterのインストール&セットアップをコマンド一発で行ってくれるもの。

kenjis/codeigniter-composer-installer: Installs the offical CodeIgniter 3 (or 4) with secure folder structure via Composer

基本的には自分で初期設定をせずに行えますが、細かく設定をしたい場合は上記の公式ドキュメントがわかりやすいです。

そして、3~5行目のコマンドはCodeIginterでテストコードを書きやすくするためのもの。CodeIgniterで実装されているUnitTestをお世辞にも高機能とは言えず、多くの場合はphpunitを使ってテストを書くことになります。

しかし、素のphpunitだとテストコードを書きにくいので、CodeIgniterでテストコードを書くためにkenjis/ci-phpunit-testのライブラリを入れることをオススメします。

そして最後のcomposer require kenjis/codeigniter-cli:1.0.x@dev --devは、CodeIgniterでcliを使うためのもの。個人的には、主にmigrationを行うために使っています。

参考文献

kenjis/ci-phpunit-test: An easier way to use PHPUnit with CodeIgniter 3.x.

CodeIgniter 3.0でマイグレーションをCLIから操作するCli for CodeIgniter — A Day in Serenity (Reloaded) — PHP, FuelPHP, Linux or something

kenjis/codeigniter-cli: Cli for CodeIgniter 3.0

3分でCodeIgniter 3.xからPHPUnit 6.0を使う — A Day in Serenity (Reloaded) — PHP, FuelPHP, Linux or something