PHP FrameworkのCodeIgniter(コードイグナイター)に関する調査
PHP FrameworkのCodeIgniter(コードイグナイター)に関する調査
著者: ふじさわゆうき
更新日: 2016/10/06
背景
仕事でPHP FrameworkのCodeIgniterを使うことになったので、フレームワーク理解のため、調査した結果をブログに残しておこうと思います。
公式サイト
- 日本CodeIgniterユーザ会
- 本家
概要
- 軽量で速度重視であることを特徴とするWebアプリケーションフレームワーク
- CodeIgniterの最初の公開バージョンは、2006年
- 2011年にはPHPの他の主要フレームワーク (CakePHP, Zend Framework, Symfony) を抑えCodeIgniterが最多となったことがある
- Ruby on Rails のように、CodeIgniterでは、ユーザは Active Record(バージョン3.0以降はQuery Builderに改称)を用いてデータベースに接続する
- バージョン3.xは、MITライセンスに変更されライセンス懸念が無くなった
PHPフレームワークの比較(Google Trendsをもとに)
条件、ツール
- 日時
- 2016年10月6日
- 比較した言語
- laravel, cakephp, zend framework, codeigniter, symfony
- 条件
- Google Trends
- 過去1年間
- すべての国、日本
グラフ
分析結果
- 世界でも、日本でも"laravel"が1番人気
- "codeigniter"は、日本では"CakePHP"に負けるが、世界では2番人気と"CakePHP"よりも人気がある
- 日本で人気の"CakePHP"は、世界では4番人気なので微妙なところ
- したがって、2016年10月現在だと、"laravel"か"codeigniter"が有力といえる
メリット
パフォーマンスが良い
以下のサイトでベンチマーク結果が載っているのですが、
https://github.com/kenjis/php-framework-benchmark
laravel, cakephp, zend framework, codeigniter, symfonyの中では、パフォーマンスが最も良いです。
- requests per second: 1秒間に処理されたリクエスト数。Webサーバのベンチマークで最も重視される項目
- peak memory: PHP スクリプトに割り当てられたメモリの最大値
framework | requests per second | peak memory |
codeigniter-3.0 | 810.99 | 0.43 |
cake-3.1 | 207.27 | 1.37 |
symfony-2.7 | 101.99 | 3.21 |
laravel-5.1 | 91.59 | 2.76 |
学習コストが低い
以下の記事などに書かれているのですが、
CodeIgniterを約半年使ってみた感想など - WEBエンジニア奮闘記
一番は学習コストの低さじゃの!ヘボプログラマーの自分でも、マニュアルをザーッと読んだだけで、 すぐに開発を始められるくらいお手軽でわかりやすい。マニュアルもわかりやすい。初めて何かフレームワークに触れてみようか、という人には是非オススメしたい
など、他にも学習コストがcakephpと比較して低いという声がGoogle検索してみると多い
まとめ
- "codeigniter"は、"laravel"よりも人気で劣るもののパフォーマンスでは圧倒的にメリットがある
- MITライセンスに変更されライセンス懸念も無い
- パフォーマンスが重要なWebサイトでは、"codeigniter"が良いと思われる