2010年9月25日

Kohana3にSmartyを利用するサンプル

Smarty templateの作成

application/viewsにhello.tplというファイルを作成します。

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>{$title}</title>
</head>
<body>
    hello, {$name}
</body>
</html>

Controllerの作成

hello.phpというControllerを作成します。

<?php defined('SYSPATH') or die('No direct script access.');

class Controller_Hello extends Controller {

    public function action_index()
    {
        $view = View::factory("smarty:hello");
        $view->name = "kinopyo!";
        $view->title = "Smarty & Kohana Sample";
        $this->request->response = $view;
    }
}

View::factoryに"smarty:"というプリフィックスを書くことでSmartyテンプレートとして認識してくれます。

動作確認

http://127.0.0.1/myapp/helloにアクセスし、"hello, kinopyo!"が表示されれば成功です。

Controller_Templateの場合

<?php defined('SYSPATH') or die('No direct script access.');

class Controller_Hello extends Controller_Template {

    public $template = 'smarty:hello';

    public function action_index()
    {
        $this->template->name = 'kinopyo!';
        $this->template->title = "Hello Title";
    }

}
Share on Twitter Share the post
Qihuan Piao

朴 起煥

東京で働いている「外人歴」9年のソフトウェア「ライター」。いつの間にか納豆が食えるようになり、これで日本に慣れきったと思いきやまだまだ驚きが続いてる。読んだり書いたりするのが好きで、自身の経験や本から得た「何か」をここに書き出してる。最近古本屋にハマってる。

他にも英語中国語で書いてます、よろしければチェックしてみてください。