2013.
08.
31
00:27:25
久しぶりにSmartyを使うことになりました。
そーいやSmarty関連まとめてなかったなーと思ったので
この機会に使い方をメモっておきまする(--)ノ
最初は基本的なダウンロードとインストールについて書きますね。
今回はWindowsのxampp環境に入れますが、まぁ基本的には他の環境でも同じ。
やり方は簡単で、
1.Smartyのダウンロード
まずは「http://www.smarty.net/download」からファイルをダウンロード。
「Latest Stable Release」とか書いてあるのでよいです。
2013/08/31時点の最新版は「Smarty 3.1.14」のようですね。
2.Smartyのインストール
適当な場所に解凍するだけ(--)ノ
いや、マジで。
解凍したファイル群のうち「libs/」フォルダだけあれば事足りるけど
心配だったらそのまま全部置いちゃっても良いですよ。
3.フォルダを作ってあげる
適当な場所に以下のフォルダを作る
・templates/ → テンプレート置きますよフォルダ
・templates_c/ → テンプレートをコンパイルするときに使いますよフォルダ
・configs/ → 設定ファイルを置きますよフォルダ
・cache/ →キャッシュができますよフォルダ
書き込み権限つけてあげてね。
で、完了\(--)/
あとは例えばこんなテンプレートを用意してφ(--)
■test.tpl
こんなコードを書くとφ(--)
■test.php
こんな風に動くφ(--)
コードのポイントは
1.「Smarty.class.php」をインクルード
2.Smartyのオブジェクト生成
3.テンプレートとか置くフォルダを指定
4.テンプレートを指定して読み込む
ってなところですかね。
Smartyのインストール方法の説明を見ると、
「php.ini」をいじれとか書いてあったり
他にもいろいろ設定しろと書いてある場合があります。
これは「Smarty.class.php」をインクルードするときのパスを省略できるとか、
実際のコードを書くときに楽するための小技です。
よく分からなければやらなくても大丈夫。
ついでに言うと「templates/」とか「templates_c/」とか
それっぽい名前のフォルダですが、ただの慣例です。
絶対にその名前じゃないとダメ!と言う訳ではありません。
極端な話
のようなコードを書いても動きますよ。
分かりにくくなるからやらないですけどね。
まとめますと、最低限必要なのは
1.Smartyのダウンロード
2.ダウンロードしたSmartyを適当なところに解凍
で、慣例として
3.テンプレートとか置くフォルダを作る
があって、実際にコードを書くときに楽をしたければ
4.php.iniになんか設定したりする
をやっても良いんでないかい?です。
一般的には「3.」までは最低限やりますかね。
「4.」は規模が大きいか気が向いたらやる感じです。
そんな感じ(--)ノ
そーいやSmarty関連まとめてなかったなーと思ったので
この機会に使い方をメモっておきまする(--)ノ
最初は基本的なダウンロードとインストールについて書きますね。
今回はWindowsのxampp環境に入れますが、まぁ基本的には他の環境でも同じ。
やり方は簡単で、
1.Smartyのダウンロード
まずは「http://www.smarty.net/download」からファイルをダウンロード。
「Latest Stable Release」とか書いてあるのでよいです。
2013/08/31時点の最新版は「Smarty 3.1.14」のようですね。
2.Smartyのインストール
適当な場所に解凍するだけ(--)ノ
いや、マジで。
解凍したファイル群のうち「libs/」フォルダだけあれば事足りるけど
心配だったらそのまま全部置いちゃっても良いですよ。
3.フォルダを作ってあげる
適当な場所に以下のフォルダを作る
・templates/ → テンプレート置きますよフォルダ
・templates_c/ → テンプレートをコンパイルするときに使いますよフォルダ
・configs/ → 設定ファイルを置きますよフォルダ
・cache/ →キャッシュができますよフォルダ
書き込み権限つけてあげてね。
で、完了\(--)/
あとは例えばこんなテンプレートを用意してφ(--)
■test.tpl
<html>
<head><title></title></head>
<body>
{$msg}<br />
test
</body>
</html>
<head><title></title></head>
<body>
{$msg}<br />
test
</body>
</html>
こんなコードを書くとφ(--)
■test.php
<?php
//「Smarty.class.php」をインクルード
require_once(dirname(__FILE__) . '/smarty/libs/Smarty.class.php');
//インスタンス作成
$smarty = new Smarty();
//ディレクトリ指定
$smarty->template_dir = dirname(__FILE__) . "/templates";
$smarty->compile_dir = dirname(__FILE__) . "/templates_c";
$smarty->cache_dir = dirname(__FILE__) . "/cache";
$smarty->config_dir = dirname(__FILE__) . "/configs";
//表示データをアサイン
$smarty->assign("msg", "はろーわーるど");
//テンプレート表示
$smarty->display("test.tpl");
?>
//「Smarty.class.php」をインクルード
require_once(dirname(__FILE__) . '/smarty/libs/Smarty.class.php');
//インスタンス作成
$smarty = new Smarty();
//ディレクトリ指定
$smarty->template_dir = dirname(__FILE__) . "/templates";
$smarty->compile_dir = dirname(__FILE__) . "/templates_c";
$smarty->cache_dir = dirname(__FILE__) . "/cache";
$smarty->config_dir = dirname(__FILE__) . "/configs";
//表示データをアサイン
$smarty->assign("msg", "はろーわーるど");
//テンプレート表示
$smarty->display("test.tpl");
?>
こんな風に動くφ(--)
はろーわーるど
test
test
コードのポイントは
1.「Smarty.class.php」をインクルード
2.Smartyのオブジェクト生成
3.テンプレートとか置くフォルダを指定
4.テンプレートを指定して読み込む
ってなところですかね。
Smartyのインストール方法の説明を見ると、
「php.ini」をいじれとか書いてあったり
他にもいろいろ設定しろと書いてある場合があります。
これは「Smarty.class.php」をインクルードするときのパスを省略できるとか、
実際のコードを書くときに楽するための小技です。
よく分からなければやらなくても大丈夫。
ついでに言うと「templates/」とか「templates_c/」とか
それっぽい名前のフォルダですが、ただの慣例です。
絶対にその名前じゃないとダメ!と言う訳ではありません。
極端な話
<?php
//「Smarty.class.php」をインクルード
require_once(dirname(__FILE__) . '/smarty/libs/Smarty.class.php');
//インスタンス作成
$smarty = new Smarty();
//ディレクトリ指定
$smarty->template_dir = "./";
$smarty->compile_dir = "./";
$smarty->cache_dir = "./";
$smarty->config_dir = "./";
//表示データをアサイン
$smarty->assign("msg", "はろーわーるど");
//テンプレート表示
$smarty->display("test2.tpl");
?>
//「Smarty.class.php」をインクルード
require_once(dirname(__FILE__) . '/smarty/libs/Smarty.class.php');
//インスタンス作成
$smarty = new Smarty();
//ディレクトリ指定
$smarty->template_dir = "./";
$smarty->compile_dir = "./";
$smarty->cache_dir = "./";
$smarty->config_dir = "./";
//表示データをアサイン
$smarty->assign("msg", "はろーわーるど");
//テンプレート表示
$smarty->display("test2.tpl");
?>
のようなコードを書いても動きますよ。
分かりにくくなるからやらないですけどね。
まとめますと、最低限必要なのは
1.Smartyのダウンロード
2.ダウンロードしたSmartyを適当なところに解凍
で、慣例として
3.テンプレートとか置くフォルダを作る
があって、実際にコードを書くときに楽をしたければ
4.php.iniになんか設定したりする
をやっても良いんでないかい?です。
一般的には「3.」までは最低限やりますかね。
「4.」は規模が大きいか気が向いたらやる感じです。
そんな感じ(--)ノ