smarty3で変数表示について
smarty3 でエラーが発生しています。
現在自宅のサーバーでsmarty3を勉強しているのですが以下のエラーで困っています。
詳しい方ご教授お願いします。
環境 :
CentOS 6.3
PHP 5.3.3
Smarty 3.1.13
読み込んでいるファイル
test.php
1 <?php
2 ini_set('display_errors', 1);
3 ini_set('date.timezone','Asia/Tokyo');
4 define('SMARTY_DIR', 'Smarty/libs/');
5 require_once( SMARTY_DIR. 'Smarty.class.php');
6
7 $smarty = new Smarty();
8
9 $smarty->template_dir = '../templates/';
10 $smarty->compile_dir = '../templates_c/';
11 $smarty->config_dir = '../config/';
12 $smarty->cache_dir = '../cache/';
13
14 $msg = "テストを表示します";
15 $smarty->assign('msg', $msg);
16
17 $smarty->display('test.tpl');
18
19
20 ?>
テンプレートファイル
1 <html>
2 {$msg}
3 </html>
表示されるエラー文
Fatal error: Uncaught exception 'SmartyCompilerException' with message 'Syntax Error in template "../templates/test.tpl" on line 2 "{$msg}" unknown tag "private_print_expression"' in /usr/local/lib/php/includes/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php:665 Stack trace: #0 /usr/local/lib/php/includes/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php(451): Smarty_Internal_TemplateCompilerBase->trigger_template_error('unknown tag "pr...', 2) #1 /usr/local/lib/php/includes/Smarty/libs/sysplugins/smarty_internal_templateparser.php(2353): Smarty_Internal_TemplateCompilerBase->compileTag('private_print_e...', Array, Array) #2 /usr/local/lib/php/includes/Smarty/libs/sysplugins/smarty_internal_templateparser.php(3101): Smarty_Internal_Templateparser->yy_r27() #3 /usr/local/lib/php/includes/Smarty/libs/sysplugins/smarty_internal_templateparser.php(3201): Smarty_Internal_Templateparser->yy_reduce(27) #4 /usr/local/lib/php/includes/Smarty/libs/sysplugins/smarty_intern in /usr/local/lib/php/includes/Smarty/libs/sysplugins/smarty_internal_templatecompilerbase.php on line 665
テンプレートファイルの{$msg}を削除して動作させるとコンパイルされてはいるようです。
よろしくお願いします。
お礼
{literal}を使う事で無事回避できました。 ありがとうございました。