smarty的问题---变量无法在html中显示
程序员文章站
2022-06-11 19:39:58
...
Smarty HTML 1.php
include_once("libs/Smarty.class.php");
$smarty=new Smarty();
$smarty->template_dir="templates";
$smarty->compile_dir="compile";
$smarty->config_dir="config";
$smarty->cache_dir="cache";
$smarty->left_delimiter="{";
$smarty->right_delimiter="}";
?>
2.php
include ("smarty_include.php");
$name="this is an apple!";
$smarty->assign("abc",$name);
$smarty->display("index.html");
?>
index.html
index里面的$abc无法显示出$name的值
2.php里可以显示出this is an apple!
请问这是为什么
include_once("libs/Smarty.class.php");
$smarty=new Smarty();
$smarty->template_dir="templates";
$smarty->compile_dir="compile";
$smarty->config_dir="config";
$smarty->cache_dir="cache";
$smarty->left_delimiter="{";
$smarty->right_delimiter="}";
?>
2.php
include ("smarty_include.php");
$name="this is an apple!";
$smarty->assign("abc",$name);
$smarty->display("index.html");
?>
index.html
{$abc}
index里面的$abc无法显示出$name的值
2.php里可以显示出this is an apple!
请问这是为什么
回复讨论(解决方案)
下载最新的Smarty:http://smarty.php.net/ 当前最新版本:2.6.18 解压后将目录中的libs目录重命名为smarty,复制到你的网站目录,同时在网站根目录下建立templates和templates_c两个目录 建立test.php,内容如下: template_dir = "./templates"; //模板存放目录 $smarty -> compile_dir = "./templates_c"; //编译目录 $smarty -> left_delimiter = "{{"; //左定界符 $smarty -> right_delimiter = "}}"; //右定界符 $smarty -> assign('test','OK'); $smarty -> display('test.html'); ?> 给templates_c权限755 在templates目录下新建test.html: {{$test}} 打开test.php,如果看到OK就说明你的smarty安装成功了!
test.php显示ok,但是test.html却是{{$test}},没有显示值,和之前没有区别。我想知道html文件里怎么显示{{$test}}
确认smarty已经正确的配置好...不知道你的smarty是个什么版本
test.php显示ok,但是test.html却是{{$test}},没有显示值,和之前没有区别。我想知道html文件里怎么显示{{$test}}
有没设置缓存目录的权限
3.1.13和2.6.27版本,都试过了.
推荐阅读
-
html5在android中的使用问题及技巧解读
-
解决html5中video标签无法播放mp4问题的办法
-
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
-
C#中winform中panel重叠无法显示问题的解决
-
解决在pycharm中显示额外的 figure 窗口问题
-
HTML识别后台传输或者js变量中字符串里的 '\n' 并成功换行显示
-
快速解决Vue项目在IE浏览器中显示空白的问题
-
win10系统提示无法显示此页在高级设置中启用TLS 1.0的解决方法
-
IE中iframe标签显示在DIV之上的问题解决方案
-
在Ubuntu中安装了MongoDB后无法启动mongod的问题