「基本動作」(2008/11/17 (月) 02:05:08) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
<h3>基本動作</h3>
<p>ここでは、基本となるSmartyの動作を確認しましょう。Smartyがインストールされていることを前提にして説明します。<br />
とりあえず、testSmartyフォルダを作成して、その中にテンプレートファルダ(templates,
templates_c)や、phpファイルなどを配置して、実行します。<br /><font color="#FF0000">注意</font> 本番環境では、公開ディレクトリ内にテンプレートフォルダ(templates,
templates_c)を配置することは避けるべきです。なぜかというと、直接URLを記述されて、テンプレートファイル自体を覗くことができるのでセキュリティーの観点からやめるべきです。</p>
<p>◆Windows環境(Xanpp)<br />
C:\xampp\htdocs\<font color="#FF0000">testSmarty</font><br />
C:\xampp\htdocs\testSmarty\<font color="#FF0000">templates</font><br />
C:\xampp\htdocs\testSmarty\<font color="#FF0000">templates_c</font></p>
<p>◆Linux環境<br />
/var/www/html/<font color="#FF0000">testSmarty</font><br />
/var/www/html/<font color="#FF0000">templates</font><br />
/var/www/html/<font color="#FF0000">templates_c</font></p>
<p>templatesフォルダ内に( tplファイル、htmlファイル )を置きます。<br />
templates_cフォルダ内には、ユーザが直接何かをするわけではなく、一度phpファイルを実行することにより、コンパイルされたファイルが自動的に格納され、2回目以降の処理を早くします。</p>
<table cellspacing="1" cellpadding="1" border="0" width="550"><tbody><tr style="background-color:rgb(204,255,204);"><td>HelloSmarty.php</td>
</tr><tr><td>
<p><?php<br />
require_once 'Smarty.class.php';<br />
$smt = new Smarty(); <font color="#339966">//Smartyクラスのインスタンス化</font><br />
$smt->templates_dir = './tempaltes/'; <font color="#339966">//Smarytオブジェクトを設定</font><br />
$smt->compile_dir = './templates_c/'; <font color="#339966">//Smarytオブジェクトを設定</font><br />
$smt->assign('name', 'こんにちわ'); <font color="#339966">//テンプレート変数の設定</font><br />
$smt->display('viewHello.tpl'); <font color="#339966">//テンプレートの呼び出し</font></p>
</td>
</tr></tbody></table><p> </p>
<table cellspacing="1" cellpadding="1" border="0" width="550"><tbody><tr style="background-color:rgb(204,255,204);"><td>viewHello.tpl</td>
</tr><tr><td>
<p><html><br />
<head><title>Smartyの基本</title></head><br />
<body><br />
<h1>Helloとは、<font color="#FF0000">{$name}</font>です。</h1><br />
</body><br />
</html></p>
</td>
</tr></tbody></table><p> </p>
<p> </p>
<p> </p>
<hr width="100%" size="2" /><hr width="100%" size="2" /><p> </p>
<p> </p>
<p> </p>
<h3>基本動作</h3>
<p>ここでは、基本となるSmartyの動作を確認しましょう。Smartyがインストールされていることを前提にして説明します。<br />
とりあえず、testSmartyフォルダを作成して、その中にテンプレートファルダ(templates,
templates_c)や、phpファイルなどを配置して、実行します。<br /><font color="#FF0000">注意</font> 本番環境では、公開ディレクトリ内にテンプレートフォルダ(templates,
templates_c)を配置することは避けるべきです。なぜかというと、直接URLを記述されて、テンプレートファイル自体を覗くことができるのでセキュリティーの観点からやめるべきです。</p>
<p>◆Windows環境(Xanpp)<br />
C:\xampp\htdocs\<font color="#FF0000">testSmarty</font><br />
C:\xampp\htdocs\testSmarty\<font color="#FF0000">templates</font><br />
C:\xampp\htdocs\testSmarty\<font color="#FF0000">templates_c</font></p>
<p>◆Linux環境<br />
/var/www/html/<font color="#FF0000">testSmarty</font><br />
/var/www/html/<font color="#FF0000">templates</font><br />
/var/www/html/<font color="#FF0000">templates_c</font></p>
<p>templatesフォルダ内に( tplファイル、htmlファイル )を置きます。<br />
templates_cフォルダ内には、ユーザが直接何かをするわけではなく、一度phpファイルを実行することにより、コンパイルされたファイルが自動的に格納され、2回目以降の処理を早くします。</p>
<table cellspacing="1" cellpadding="1" border="0" width="550"><tbody><tr style="background-color:rgb(204,255,204);"><td>HelloSmarty.php</td>
</tr><tr><td>
<p><?php<br />
require_once 'Smarty.class.php';<br />
$smt = new Smarty(); <font color="#339966">//Smartyクラスのインスタンス化</font><br />
$smt->templates_dir = './tempaltes/'; <font color="#339966">//Smarytオブジェクトを設定</font><br />
$smt->compile_dir = './templates_c/'; <font color="#339966">//Smarytオブジェクトを設定</font><br />
$smt->assign('name', 'こんにちわ'); <font color="#339966">//テンプレート変数の設定</font><br />
$smt->display('viewHello.tpl'); <font color="#339966">//テンプレートの呼び出し</font></p>
</td>
</tr></tbody></table><p> </p>
<table cellspacing="1" cellpadding="1" border="0" width="550"><tbody><tr style="background-color:rgb(204,255,204);"><td>viewHello.tpl</td>
</tr><tr><td>
<p><html><br />
<head><title>Smartyの基本</title></head><br />
<body><br />
<h1>Helloとは、<font color="#FF0000">{$name}</font>です。</h1><br />
</body><br />
</html></p>
</td>
</tr></tbody></table><p> </p>
<p> </p>
<p> </p>
<p> </p>
<h2>テンプレートの構造</h2>
<table cellspacing="1" cellpadding="1" border="0" width="550"><tbody><tr style="background-color:rgb(204,255,204);"><td>サンプル.tpl</td>
</tr><tr><td>
<p><html><br />
<head><title>Smartyの構造</title></head><br />
<body><br />
<table border='1'><br />
<tr><br />
<th>名前</th><th>住所</th><th>電話番号</th><th>メール</th><br />
</tr><br />
<font color="#339966">{* foreach関数のサンプル *}</font><br />
<font color="#0000FF">{foreach from = $data item = 'value'}</font><br />
<tr><br />
<td><font color="#0000FF">{$value.name |
escape}</font></td><br />
<td><font color="#0000FF">{$value.address |
escape}</font></td><br />
<td><font color="#0000FF">{$value.tel}</font></td><br />
<td><font color="#0000FF">{$value.mail |
escape}</font></td><br />
</tr><br />
<font color="#0000FF">{/foreach}</font><br />
</table><br />
</body><br />
</html></p>
</td>
</tr></tbody></table><p> </p>
<p> </p>
<hr width="100%" size="2" /><hr width="100%" size="2" /><p> </p>
<p> </p>
<p> </p>
表示オプション
横に並べて表示:
変化行の前後のみ表示: