Get Smarty


Smarty Icon

You may use the Smarty logo according to the trademark notice.

Smarty Template Engine Smarty Template Engine

For sponsorship, advertising, news or other inquiries, contact us at:

Sites Using Smarty

Buy cheap glasses from and save up to 80%.

Where to buy prescription glasses? is your best choice!

Where to buy discount wedding dresses and cheap smart dresses free shipping -

Shop for 2018 World Cup Football Boots Online sale at

Browse best 2018 world cup soccer cleats and shoes from


Smarty の構文解析を回避する

時々、Smarty の構文解析の対象にしたくないと望む、 もしくはそうする必要がある部分があります。 典型的な例としては、 テンプレートに Javascript や CSS コードが含まれるときです。 それらの言語が Smarty のデフォルトの デリミタ である { と } を使用するときに問題が発生します。

もっとも単純な解決方法は、Javascript と CSS コードをそれぞれファイルに切り分け、 それらにアクセスするために標準的な HTML の機能を使用する事で状況を回避する事です。

リテラルコンテンツを含めるには {literal}..{/literal} ブロックを使用します。 HTML エンティティの使用法と同様に、 {ldelim}{rdelim} あるいは {$smarty.ldelim} を使用して現在のデリミタを表示することができます。

単純に Smarty の $left_delimiter および $right_delimiter を変更するだけでも便利になることが多々あります。

Example 3.8. デリミタを変更する例


$smarty->left_delimiter = '<!--{';
$smarty->right_delimiter = '}-->';

$smarty->assign('foo', 'bar');
$smarty->assign('name', 'Albert');




Welcome <!--{$name}--> to Smarty
<script language="javascript">
  var foo = <!--{$foo}-->;
  function dosomething() {
    alert("foo is " + foo);


No comments for this page.
Post a Comment
All comments are moderated. Support questions are ignored, use the forums instead.
Email: (not shown)
What is 7 plus 10? (Are you human?)