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";
}
}