FuelPHP – 設定
インストール (ダウンロード版)
こちらにて、oilコマンドによるFuelPHPのインストールができたと思います。
このページでは「oil create ~~~~」を使わないインストール方法を書きます。すぐ終わります。
あ、バージョンは1.4で。
1. まず、ファイルをダウンロードします。→http://fuelphp.com/
「download v○.○ now!」ってボタンでダウンロードです。
2. ダウンロードしたファイルを展開しましょう。
ユーザーは「test_user」だとして、「/home/test_user」にファイルを展開しましょう。
展開したディレクトリ名を「sample」とします。(お好みでどうぞ)
最終的なパスは「/home/test_user/sample」となるはず。
3. oil refine install ・・・
ここでパーミッション設定やら色々やってくれるoilコマンドがあるので使います。
1 2 |
$cd /home/test_user/sample $php oil refine install |
これで終了。
成功すると緑文字で以下のメッセージが表示されます。
1 2 3 4 |
Made writable: /home/test_user/sample/fuel/app/cache Made writable: /home/test_user/sample/fuel/app/logs Made writable: /home/test_user/sample/fuel/app/tmp Made writable: /home/test_user/sample/fuel/app/config |
ね、すぐ終わったでしょ。
Smartyを使う
FuelPHPにテンプレートエンジンであるSmartyを足してみる。
ViewファイルをSmartyで書くと楽になるよ!っていうことです。
そもそもSmartyって何?っていうのはWikipedia参照でお願いします。
FuelPHPにSmartyをいれる
インストール手順。
1. Smartyをここからダウンロード。
2. ダウンロードしたものは圧縮されてると思うので展開する。
3. FuelPHPの「app/vendor」フォルダに、展開したSmartyフォルダを突っ込む。
4. FuelPHPの「app/config/config.php」を編集。paserというものを追記する。
1 2 3 4 5 |
'always_load' => array( 'packages' => array( 'parser', //追加 ), ) |
これでSmartyが使用可能になります。
早速Smartyを使ってみる
Smarty自体の使い方や構文はまた別の機会で。
ここではFuelPHPでのSmartyの使い方をかきます。
今までのViewファイル「sample.php」が
Smartyにすると「sample.smarty」になります。
このファイルをControllerから呼び出すには
1 2 3 4 5 6 7 8 9 10 11 12 13 |
$data = array( 'title' => 'SampleTitle', 'test_user' => 'takahashi', ); //今までの呼び出し方 $view1 = View::forge('welcome/index',$data); //smartyファイルの呼び出し方 $view2 = View_Smarty::forge('welcome/index', $data) //拡張子指定のこんな呼び方もあります $view3 = View::forge('welcome/index.smarty',$data); |
このようにします。(下2種類が使えます)
肝心のindex.smartyの中身は
1 2 3 4 5 6 7 8 9 10 |
<html> <head> <title>{$title}</title> </head> <body> ようこそ!{$test_user}さん。 </body> </html> |
こんな感じです。
FuelPHPの初期設定 (CentOS)
FuelPHPの初期設定メモ。
パスが微妙にUbuntuっぽくないのは、それは私がCentOS使ってたせいです。ごめんなさい。
大体同じなので気にせず。
では行きます。
1. Apache PHP MySQL oil をインストールする
はい、それぞれインストールしてください。
oilはここでインストール手順を見ましょう。
2. oil create する前に・・・
php.iniを編集
1 2 |
[Date] ;date.timezone = |
を
1 2 |
[Date] date.timezone = ‘Asia/Tokyo' |
とします。
環境によっては、最初からなっていてすんなりoil create が通るかもしれませんね。
3. oil create ・・・
適当なフォルダに「oil create ・・・」を実行してFuelPHPをインストールします。
今回は,/home/test_user/sample という具合に作るとします。(test_userは今回使用するユーザーアカウントです)
1 2 |
$cd /home/test_user $sudo oil create sample |
これで完了。
次に、作成したsample配下のpublicのシンボリックリンクをApacheの公開ディレクトリに貼っ付けてあげます。
1 |
$sudo ln -s /home/test_user/sample/public /var/www/html/fuel |
そして忘れちゃならんのが、Apacheがリンク先にアクセスできるようにパーミッションの変更をしなければならないです。
oilコマンドにて作成したFuelPHPディレクトリの「sample」は、oilコマンドが自動的に適切なパーミッションにしてくれるのでそのまま。
この時変更するディレクトリはユーザーのホームディレクトリ。
1 |
$sudo chmod 705 /home/test_user |
これでAHー64 Apacheが燃料タンクFuelPHPの公開フォルダ(public)を攻撃見つけることが可能となります。
Apacheが起動している場合、この時点で外部公開されています。
4. config.php
sample/fuel/app/config/config.php を編集しまっしょい。必要最低限+アルファで。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<?php ini_set('default_charset', 'UTF-8'); return array( 'index_file' => false, 'language' => 'ja', // Default language 'language_fallback' => 'en', 'locale' => 'ja_JP', 'default_timezone' => 'Asia/Tokyo', 'log_threshold' => Fuel::L_ALL, 'log_path' => APPPATH.'logs/', 'log_date_format' => 'Y-m-d H:i:s', ); |
2行目は文字コード設定。
大事なのはtimezoneの設定。あぁ怖い怖い。
下の方のlogはFuelPHPが出力してくれるログの設定です。
log_thresholdでALLとか指定すると、エラーや警告含め全部ログ出してくれます。
超最低限設定は以下
1 2 |
<?php return array('default_timezone' => 'Asia/Tokyo'); |
やっぱりタイムゾーンだけは設定しないとエラーになる。(私の環境だけ?)
あぁ怖い怖い。
5. 試しにアクセス
ここまできたらブラウザからアクセスしてみましょう。
Welcomeページが表示されるはずです。
表示されなかった場合は、あなたの設定が間違っているか、私の説明が適当だっていうことです。
インストール
最近人気という噂のPHPフレームワーク、FuelPHPを使ってみます。
日本語のドキュメントはこちらで閲覧できます。gitでざっくり落とすならこちら。
インストールは、自動または手動を選択できますが、ここでは自動インストールを行います。
まず最初にFuelPHPの様々な自動生成機能を提供してくれるoilコマンドをインストールします。
1 |
$ curl get.fuelphp.com/oil | sh |
oilコマンドをインストールしたら、HTMLのドキュメントルートに移動し、oilコマンドでプロジェクトリソースを生成します。
1 2 3 4 5 6 |
#ubuntuの場合のデフォルト $ cd /var/www #mysightディレクトリに置くことにします $ mkdir mysight #mysightディレクトリにリソースをインストールします $ oil create mysight |
これでインストールは完了です。
ブラウザでmysight/publicを開くとウェルカムページが表示されます。
mysight下のfuelphpをEclipse PDTにプロジェクトとして取り込めば開発を始めることができます。
2013年1月8日現在、FuelPHPのEclipseプラグインはまだ無いようです。
FuelPHPを使ってみた過程を書いていきます。
連載にあたっては、達人出版会の「はじめてのフレームワークとしてのFuelPHP」を参考にしました。