CodeIgniterをインストールしてみよう!!(その2)

2009 年 3 月 3 日 | カテゴリー: CodeIgniter, LAMP奮闘記, PHP

PHP5.2.9でarray_unique関数の仕様変更が実施され、5.2.8以前と5.2.9ではこの関数の返す結果が変わるケースがあるそうです。

array_unique関数がPHP5.2.9から後方互換性を失いました

各FWでも利用されてるみたいで、CodeIgniterはActive Recordのキャッシュ時と、Trackbackライブラリ内で使ってるとの事で、どっちも使ってなくてセーフ!!(= ‘艸’)ムププ

イヤ、そういう問題じゃないでしょ!!オラァ(p゚ロ゚)==p)`д)グハッ

…と、自分ツッコミしていたら「Zend Frameworkでgrepしたら21箇所使ってたぜベイベ!!」などという情報を発見してしまい、あえなく撃沈。SymfonyもCakePHPも影響あるみたいです。ソースからビルドしてるので最新版バリバリ追っかけられるぜ!!と喜んでいたのですが、5.2.9に関しては、いつものごとく後先考えずインストール!!というのは避けた方が良さそうですね。

Zendの21箇所は自力じゃムリ(こういう割り切りは異常に早いのです)だから、CodeIgniterの方だけでも頑張ってソース修正してみようかなぁ…などと、大それた事を考えておりますが、本日は前回の予告エントリに基づき、CodeIgniter(以下CI)インストール第2弾なのです。

さて、前回のエントリであっという間にインストールは終わってしまいましたが、もう一歩踏み込んでみます。

まずは、デフォルトコントローラの設定です。/system/application/config/routes.phpを開きますと、

$route['default_controller'] = "welcome";

となっているかと思われます。このdefault_controllerというのは、前回指定したbase_urlにアクセスした時にCIがどのcontrollerを呼び出すのか?という指定ですね。ですから、この”welcome”となっている所を自分のサイト用のデフォルトにしたいcontroller名に変えてやれば良いワケです。

$route['default_controller'] = "home";

いつも大抵”home”か”top”にしておりまして、今回は気分で”home”にしてみました。気分で選んだりしてる間はいつまで経っても”プロ”グラマとは言えませんね(-ω-;)

で、モチロン上記のように指定したら”home”というcontrollerを用意してあげなくてはイケマセンので、/system/application/controllers/下にhome.phpを作成します。

controller、ファイル名、クラス名はそれぞれ対応しております(クラス名は最初大文字です!!)ので、home.phpではHomeというクラスを宣言いたしますです。さらにさらに、CIはURLによるメソッドの指定が無ければindexメソッドを呼び出す仕様ですので、何はなくともindexメソッドだけは作っておきます。

<home.php>

<?php if(!defined('BASEPATH')) exit('No direct script access allowed.');

class Home extends Controller
{
    public function __construct()
    {
        parent::Controller();
    }

    public function index()
    {
        echo 'Hello World!!';
    }
}
?>

これで、http://localhost/CodeIgniter/index.php/homeにアクセスすれば…

出ましたよね?Hello World!!

で、1行目のif文には何の意味があるのか?とか、URLのindex.phpはダサいね、とか考え出すと、どうしましょう??またも持ち越してしまいそうです(ノ゚ρ゚)ノ

中途半端に終わるのは気持ちが悪いので、キリのいい所まで書き記しておきたいのですが、恐るべき泥沼に片足を突っ込んだ予感&悪寒に襲われているのは何故でしょう??

と、とにかく今日はここまで。。゙(ノ><)ノ ヒィ

コメントはまだありません。