CodeIgniter入門!世界一簡単なHello Worldアプリの作り方と仕組みを解説
生徒
「CodeIgniter(コードイグナイター)って何ですか?初心者の僕でもアプリを作れますか?」
先生
「CodeIgniterはPHPという言葉を使って、Webアプリを素早く作るための『道具箱』のようなものです。初心者の方でも、おまじないの言葉を少し覚えるだけで、画面に文字を出すことができますよ。」
生徒
「具体的に、どうやって画面に『Hello World』って表示させるんですか?」
先生
「まずは、一番簡単な表示方法から順番に学んでいきましょう。プログラミングの第一歩を一緒に踏み出しましょう!」
1. CodeIgniter(コードイグナイター)とは何か?
CodeIgniterは、PHPというプログラミング言語で動くフレームワークです。フレームワークとは、家を建てるときにゼロから柱を削るのではなく、すでにある程度の土台や骨組みが用意されている「組み立てキット」のようなものです。これを使うことで、初心者でもセキュリティがしっかりした本格的なWebサイトやシステムを、効率よく開発することができます。
CodeIgniterの最大の特徴は「軽さ」と「分かりやすさ」です。難しいルールが少なく、直感的に動かせるため、PHPの基礎を学び始めたばかりの人に最適な入門用ツールと言えます。これから解説する「Hello World」の表示は、すべてのWeb開発の基本となりますので、ゆっくり丁寧に進めていきましょう。
2. アプリの脳みそ「コントローラー」を作成する
CodeIgniterで画面に文字を出すためには、まずコントローラーというものを作る必要があります。コントローラーは、料理店でいうところの「注文を聞いて厨房に指示を出す店員さん」のような役割をします。ユーザーが「このページを見たい!」と言ってきたときに、何を表示するかを決定する、いわばアプリの脳みそです。
まずは、app/Controllersというフォルダの中に、Hello.phpという名前のファイルを作ってみましょう。ファイル名の一文字目を大文字にするのが、CodeIgniterの大事なルールです。以下のコードを書き込んでみてください。
namespace App\Controllers;
class Hello extends BaseController
{
public function index()
{
echo 'Hello World! CodeIgniterの世界へようこそ!';
}
}
このコードの中にあるecho(エコー)という言葉が、「画面に文字を出して!」という命令になります。非常にシンプルな一歩ですが、これが全てのプログラムの出発点です。
3. ブラウザで確認!URLの仕組みを理解しよう
ファイルを作成したら、実際にパソコンのブラウザ(Google Chromeなど)で見てみましょう。CodeIgniterでは、URL(インターネット上の住所)によって、どのコントローラーが動くか決まっています。一般的には、サーバーのアドレスの後に/public/helloと入力することで、先ほど作ったプログラムが動きます。
ここで重要なのがメソッドという考え方です。先ほどのコードに書いたindexという部分は、そのコントローラーの「標準の動作」を指します。もしURLに何も指定がない場合は、自動的にこのindexが呼び出されます。実行すると、画面には以下のように表示されるはずです。
Hello World! CodeIgniterの世界へようこそ!
真っ白な画面にこの文字が出れば、あなたのパソコンの中で初めてプログラムが動いた証拠です。おめでとうございます!
4. ビュー(見た目)を使ってデザインを整える
先ほどの例では、コントローラーから直接文字を出しましたが、実際のWebアプリではHTML(ホームページの見た目を作る言葉)を使って綺麗に整えます。この見た目を担当するファイルをビューと呼びます。店員さん(コントローラー)が、盛り付け(ビュー)を整えて、お客さんに出すイメージです。
app/Viewsというフォルダに、hello_view.phpというファイルを作ります。そこに、デザインを含めたHTMLコードを書いてみましょう。プログラムの実行結果を綺麗に見せるための大事な工程です。
<!DOCTYPE html>
<html>
<head>
<title>Helloページ</title>
</head>
<body>
<h1 style="color: blue;">こんにちは!</h1>
<p>これはビューファイルから表示されています。</p>
</body>
</html>
このように、見た目に関する命令を別のファイルに分けることで、後からデザインを変更しやすくなります。これを「役割分担」と呼び、プログラミングの世界ではとても重要視されている考え方です。
5. コントローラーからビューを呼び出す方法
ビューファイルを作っただけでは、まだ画面には表示されません。店員さん(コントローラー)に、「あの盛り付け(ビュー)を使って料理を出して!」と命令する必要があります。コントローラーの書き方を少し変えて、ビューファイルを読み込むように修正しましょう。
新しくdisplayという名前の動作(メソッド)を追加してみます。以下のコードをHello.phpに追記するか、書き換えてみてください。
public function display()
{
// viewsフォルダの中のhello_view.phpを表示させる
return view('hello_view');
}
return view('ファイル名');という命令を使うことで、指定したビューファイルの内容が画面に映し出されます。ブラウザで/public/hello/displayにアクセスすると、青色の文字で「こんにちは!」と表示されるはずです。
6. データをビューに渡して表示を変化させる
次に、コントローラーで用意した名前や日付などのデータを、ビューに渡して表示させてみましょう。これができるようになると、ユーザーごとに名前を変えたり、今日の日付を表示したりする「動的な(変化する)サイト」が作れるようになります。
データを受け渡すときは、連想配列という「ラベル付きの箱」を使います。例えば、'name'というラベルを貼った箱に、あなたの名前を入れてビューに送ります。以下のプログラムを見てみましょう。
public function welcome()
{
$data['user_name'] = '初心者太郎';
$data['today'] = date('Y年m月d日');
return view('welcome_message', $data);
}
このように、$dataという変数の中に情報を詰め込んで、view関数の2番目の引数として渡します。これで、ビュー側でこのデータを自由に使えるようになります。
7. ビューでデータを受け取って表示する仕組み
コントローラーから送られてきたデータは、ビューの中では「ラベル名」の変数として使うことができます。先ほどの例であれば、$user_nameという名前で中身を取り出せます。HTMLの中に、PHPの命令を少し混ぜて書いてみましょう。
<div class="user-profile">
<h2>ようこそ、<?php echo $user_name; ?>さん!</h2>
<p>今日は <?php echo $today; ?> ですね。学習を始めましょう!</p>
</div>
この<?php echo ... ?>という書き方は、PHPで一番よく使う「変数の内容をここに表示して!」という指示です。実行結果は以下のようになります。
ようこそ、初心者太郎さん!
今日は 2026年01月08日 ですね。学習を始めましょう!
このように、コントローラーで処理した結果をビューで綺麗に表示するのが、CodeIgniterでのアプリ作りの基本の流れになります。
8. エラーが出たときの対処法とデバッグのコツ
プログラミングをしていると、必ず「画面が真っ白になった!」とか「英語のメッセージが出てきた!」という場面に遭遇します。これはエラーと呼ばれますが、決して失敗ではありません。コンピューターが「ここが分からないから教えて!」と合図を送ってくれているのです。
初心者が特につまずきやすいポイントは、セミコロン(;)の忘れや、カッコ({})の閉じ忘れです。CodeIgniterには、どこが間違っているかを教えてくれる便利な機能が備わっています。エラーメッセージをよく読むと、「〇行目が怪しいよ」と書いてありますので、そこを重点的に見直してみましょう。一歩ずつ間違いを直していく作業をデバッグと言いますが、これを繰り返すことでプログラミングの腕はどんどん上達します。