CodeIgniter
コードイグナイター(モダンPHP開発とアーキテクチャ)
意味 軽量高速なPHPフレームワーク
CodeIgniterとは?
CodeIgniterは、小規模で軽量、しかも高速なPHPフレームワークです。シンプルなコア機能と豊富なライブラリを提供し、初心者でも扱いやすい設計になっています。
CodeIgniterの具体的な使い方
モデルとコントローラーの連携例
// application/models/News_model.php
class News_model extends CI_Model {
public function get_news($slug = FALSE)
{
if ($slug === FALSE) {
$query = $this->db->get('news');
return $query->result_array();
}
$query = $this->db->get_where('news', array('slug' => $slug));
return $query->row_array();
}
}
// application/controllers/News.php
class News extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('news_model');
$this->load->helper('url_helper');
}
public function index()
{
$data['news'] = $this->news_model->get_news();
$data['title'] = 'ニュース一覧';
$this->load->view('templates/header', $data);
$this->load->view('news/index', $data);
$this->load->view('templates/footer');
}
}
👇出力結果
// ブラウザにニュース記事の一覧が表示されます
この例では、CodeIgniterのモデルとコントローラーの連携を示しています。News_modelはデータベースからニュース記事を取得し、Newsコントローラーはそのモデルを使用してビューにデータを渡しています。この構造により、ビジネスロジックとプレゼンテーションロジックを分離できます。
フォームバリデーションの例
// application/controllers/Form.php
class Form extends CI_Controller {
public function index()
{
$this->load->helper(array('form', 'url'));
$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'ユーザー名', 'required|min_length[5]|max_length[12]');
$this->form_validation->set_rules('password', 'パスワード', 'required|min_length[8]');
$this->form_validation->set_rules('email', 'メールアドレス', 'required|valid_email');
if ($this->form_validation->run() == FALSE) {
$this->load->view('myform');
} else {
$this->load->view('formsuccess');
}
}
}
// application/views/myform.php
<?php echo validation_errors(); ?>
<?php echo form_open('form'); ?>
<label for="username">ユーザー名</label>
<input type="text" name="username" value="<?php echo set_value('username'); ?>">
<label for="password">パスワード</label>
<input type="password" name="password">
<label for="email">メールアドレス</label>
<input type="text" name="email" value="<?php echo set_value('email'); ?>">
<input type="submit" name="submit" value="送信">
</form>
👇出力結果
// バリデーションエラーがある場合は、エラーメッセージとともにフォームが再表示されます
// バリデーションが成功した場合は、成功メッセージが表示されます
この例では、CodeIgniterのフォームバリデーション機能を使用しています。コントローラーでバリデーションルールを設定し、フォームの送信時にそれらのルールに基づいてデータを検証します。バリデーションが失敗した場合はエラーメッセージとともにフォームを再表示し、成功した場合は成功ページを表示します。
CodeIgniterに関するよくある質問
CodeIgniterが学べる書籍の紹介
「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、PHPのCodeIgniterやSOLID、spl_autoload_register()、オブザーバー、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。
よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。
HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。
PHPを学べる「プログラミング単語帳」アプリ
プログラミング単語帳がアプリになりました!PHPはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。
収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。
いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。
2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!
2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!