4
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

10分でできるCodeigniter導入

Last updated at Posted at 2019-08-26

概要

CodeIgniter(コードイグナイター)は、複数あるPHPのWeb開発フレームワークの一つです。
特徴として、「高速」・「軽量」・「シンプル」を実現しており、
PHPの基礎を学んだ方が初めて触るフレームワークとして紹介されることも多いようです。

実は、導入が10分レベルで簡単です。
そこで、今回は実際の利用法をご紹介いたします!

その1.Codeigniter本体を落としてアップ

https://codeigniter.com/
からダウンロード。
code.png

展開したファイルをサーバにアップロード。
files.png

その2.基本設定ファイル(config.php)を編集

application/config/config.php内
”base_url”についての設定をする。
初期設定では、
$config[‘base_url’] = ‘http://example.com/’;

これを環境によって設定します。
サーバーの環境変数を使う場合はこんな感じ。↓

$config['base_url'] = "http://" . $_SERVER["HTTP_HOST"] . "/";

その3.DB設定(DB使わなければ不要)

application/config/config.php内

$db['default'] = array(
        'dsn'   => '',
        'hostname' => 'localhost',
        'username' => 'root',
        'password' => '',
        'database' => 'database_name',
        'dbdriver' => 'mysqli',
        'dbprefix' => '',
        'pconnect' => TRUE,
        'db_debug' => TRUE,
        'cache_on' => FALSE,
        'cachedir' => '',
        'char_set' => 'utf8',
        'dbcollat' => 'utf8_general_ci',
        'swap_pre' => '',
        'encrypt' => FALSE,
        'compress' => FALSE,
        'stricton' => FALSE,
        'failover' => array()
);

大体の場合以下を編集すればO.K.

hostname: DBサーバのホスト名
username: DBベースのユーザ名
password: DBのパスワード
database: DB名
dbdriver:DBのタイプ(mysqli(MySQLの場合), postgre(PostgreSQLの場合))

これだけでもう開発がスタートできます!お手軽ですね。

URLについて

さて、カンタンに始められるCodeigniterですが、慣れないとちょっとややこしい(?)点があります。

初期設定のままだと
http://test.com/index.php/[Controller]/[Action]/[Parameter1]/[Parameter2]/
のような奇妙なURLになってしまいます。
これではちょっと人には見せられませんね……(泣)

解決するためには、以下の設定が必要です。

①.htaccess

RewriteEngine on
RewriteCond $1 !^index\.php
RewriteRule ^(.*)$ /index.php/$1 [L]

②httpd.confの設定

RewriteEngine on
RewriteCond $1 !^/index\.php
RewriteRule ^(.*)$ /index.php/$1 [L]

↑それぞれ上から
・mod_rewriteを有効に
・URIの書き換えルールからindex.phpを除外
・RewriteCondで指定したものを除く全てをindex.phpの後ろにつづけたURIに書き換えたものとして処理

おわりに

Codeigniterは、認証機能が標準で付いていないのがネックという意見も一部ではあるようです。(ライブラリやプラグインの追加で可能です。)
しかし、Laravelなど新たな人気フレームワークが台頭してきた今でも、高速性と自由度の高さから採用され続けています。2006年から使われていることからその信頼性も十分です。
未経験の方は、この機会に是非一度は触ってみてはいかがでしょうか。

参考:
[CodeIgniter 3入門(インストールから設定まで)]
(http://onocom.net/blog/codeigniter-3%E5%85%A5%E9%96%80%EF%BC%88%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%8B%E3%82%89%E8%A8%AD%E5%AE%9A%E3%81%BE%E3%81%A7%EF%BC%89/)
Codeigniter 徹底ガイド

4
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?