【Codeigniter4】Codeigniterで最初の画面を表示してみる(初心者向け)

普段は改修案件が多く、フレームワークを1から構築する機会がほとんどありません。
そこで、軽量フレームワークとして有名なCodeigniter4を一度触ってみることにしました。

Laravelを使うことが多いので、
「どのくらい構造が違うのか」
「画面を出すまでの流れはどうなのか」
を確認する目的も含めて、簡単な動作確認をしていきます。

目次

フォルダ構成

今回触ったのは、主に以下の2つだけです。

app/
 ├─ Controllers/
 │    └─ TestController.php
 └─ Views/
      └─ test.php

シンプルでMBSの形が分かりやすい構成になっています。

開発環境の準備

こちらはcomposerがインストールされている前提で進めます。
まずは、Codeigniter4のプロジェクトフォルダを作成します。

composer create-project codeigniter4/appstarter learnCI

次に、依存関係のインストール

composer install

バージョン確認

php spark --version

正常にインストールされていれば、spark コマンドが実行できるようになります。

画面を表示してみる

1.ルーティング設定

codeigniterは「Config/Routes.php」の中にルーティングの設定をするらしいですね。
app/Config/Routes.phpの中に以下を追記します。

<?php

use CodeIgniter\Router\RouteCollection;

/**
 * @var RouteCollection $routes
 */
$routes->get('/', 'Home::index');

$routes->get('/test', 'TestController::index');
//↑を追加

これで /test にアクセスしたときに index() が呼ばれるようになります。

2.コントローラの作成

次にコントローラの作成です。
codeigniterにはlaravelと似たようなコマンドがあるんですね。

php spark make:controller TestController

作成されたTestController.phpを編集します。

<?php

namespace App\Controllers;

use App\Controllers\BaseController;
use CodeIgniter\HTTP\ResponseInterface;

class TestController extends BaseController
{
    public function index()
    {
        return view('test');//←これを「test」に修正
    }
}

3.Viewファイルを作成

app/Views/test.phpを作成します。
もともとwelcome_message.phpがあると思うのでそれを複製し、中身を必要最小限にします。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Welcome to CodeIgniter 4!</title>
    <meta name="description" content="The small framework with powerful features">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="shortcut icon" type="image/png" href="/favicon.ico">
</head>
<body>
	<h1>test</h1>
</body>
</html>

4.画面を確認する

ローカルサーバーを起動します。

php spark serve

ブラウザで以下にアクセス

http://localhost:8080/test

設定どおりの画面が表示されれば成功です!

ここまでで触った感想

フォルダ構成がちょっとだけ違うだけでlaravelとあんまり変わらないですね。
これからCRUDアプリを作っていくと違いを実感できるようになるかな?

まとめ

今回は、CodeIgniter 4 で最初の画面を表示するところまでをまとめました。

  • ルーティングを追加する
  • コントローラを作る
  • View を作成する

この3ステップで画面を表示できるので、
初心者でも取り組みやすいフレームワークだと感じました。

次回は、実際に CRUD 機能を作ってみる編 をまとめる予定です!

  • URLをコピーしました!
目次