この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:2
ページ更新者:atom
更新日時:2026-06-10 06:57:13

タイトル: CodeIgniter

本稿は CodeIgniter に関する記事です。

CodeIgniterとは?

CodeIgniter は PHP 製の 軽量・高速な Web アプリケーションフレームワークです。「最小の設定で動く小さな MVC フレームワーク」を志向しており、学習コストが低いことから、小〜中規模 Web サイト・社内ツールで広く採用されてきました。

ファイルサイズが小さく、依存も少ないため、レンタルサーバ上で動かしやすいのも特徴です。現在の主流は CodeIgniter 4 系で、Composer での導入と Namespace を取り入れた現代的な構成になっています。

CodeIgniter の主な特徴

  • 軽量・高速 — コア部分のフットプリントが小さい
  • MVC — Controller / Model / View の標準構造
  • 学習コストが低い — 設定がほぼ不要、ドキュメントが充実
  • ライセンス — MIT (商用利用も自由)
  • レンタルサーバ親和性 — 共有レンタルサーバでも動作させやすい
  • 豊富な内蔵ヘルパ・ライブラリ — フォーム・セッション・メール・画像処理など
  • クエリビルダ・Migrations・Database Forge — DB 操作も標準化

バージョン

バージョン位置づけ
CodeIgniter 4現行系。PHP 7.4+ / 8.x、Composer、Namespace、PSR 準拠
CodeIgniter 3レガシー系。今も保守版がリリース。古い PHP でも動く
CodeIgniter 2EOL。利用継続は推奨しない

典型的なプロジェクト構造 (CI4)

ディレクトリ役割
app/Controllers/コントローラ
app/Models/モデル (DB アクセス)
app/Views/ビュー (PHP テンプレート)
app/Config/設定 (ルーティング・DB 等)
app/Filters/リクエスト前後の処理 (認証・ログ等)
public/公開ディレクトリ (index.php・assets)
writable/キャッシュ・ログ等の書込領域

典型的なコード例 (CI4)

// app/Controllers/Hello.php
namespace App\Controllers;

use CodeIgniter\Controller;

class Hello extends Controller
{
  public function index($name = 'World')
  {
    return view('hello', ['name' => $name]);
  }
}

主な PHP フレームワークとの比較

フレームワーク位置づけ規模
CodeIgniter軽量・学習簡単小〜中
Laravelフルスタック・エコシステム最大小〜大
Symfony大規模・コンポーネント集中〜大
CakePHPフルスタック・Rails 系小〜中
Yiiフルスタック・コード自動生成小〜中
Silexマイクロ (EOL)

インストール (CI4 / Composer)

composer create-project codeigniter4/appstarter myapp
cd myapp
php spark serve   # 開発サーバ起動 (デフォルト http://localhost:8080)

運用上の注意

  • 本番では CI_ENVIRONMENT=production に設定し、詳細エラーを非表示
  • 公開すべきは public/ のみ。app/writable/ はドキュメントルート外に置く
  • ルーティングは app/Config/Routes.php。本番ではAuto Routing は無効化が安全
  • セッション・キャッシュは Redis / Memcached を検討
  • レンタルサーバの PHP バージョンが古いと CI4 が動かない (PHP 7.4+ 必須)。PHP 7.4 自体は EOL なので 8.x を選ぶのが安全

関連