php smarty 配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php smarty 配置相关的知识,希望对你有一定的参考价值。

smarty在配置左右模板变量标记的时候以前用的是<>
今天重新建立了一个站点,配置用的是{{}}为什么就不行了那?还要写<>才行?
是不是有冲突,有的话怎么做才行?条件是不能换回<>!

我在本地测试过了,没问题的,我的发布目录为d:/www/del_smarty/
目录结构:d:/www/del_smarty/
/libs(里面包含smarty)
/templates
/templates_c
/cache
/configs
-----------------------------------------------------------------
main.php
<?php
define("SMARTY_PATH","d:/www/del_smarty/");
require_once("libs/Smarty.class.php");

$tpl = new Smarty;
/**
* 我的路径指向方式
$tpl -> template_dir = SMARTY_PATH.'templates/';

$tpl -> compile_dir = SMARTY_PATH.'templates_c/';

$tpl -> cache_dir = SMARTY_PATH.'cache/';

$tpl -> config_dir = SMARTY_PATH.'configs/';
**/

$tpl -> template_dir = 'd:/www/del_smarty/templates/';
$tpl -> compile_dir = 'd:/www/del_smarty/templates_c/';
$tpl -> cache_dir = 'd:/www/del_smarty/cache/';
$tpl -> config_dir = 'd:/www/del_smarty/configs/';

$tpl -> left_delimiter = '<';
$tpl -> right_delimiter = '>';
?>
---------------------------------------------------
test.php
<?php
require_once("main.php");

$tpl -> assign('title','test title');

$tpl -> assign('content','test content');

$tpl -> display('test.htm');

?>
-------------------------------------------------------
test.htm
<html>
<><br/>

<>
</html>
这个应该是php的语法错误提示,你再看看你的错误那行的标点没有在中文状态下吧?不行就Q我吧,33712313
我最近也在研究smarty,呵呵,共同研究嘛
参考技术A 边界符是可以自己定义的,在smarty对象初始化的时候可以定义。但是像你这样用两层大括号好像不太好吧,用别的试试,如<! !> 参考技术B /*********************************************
*文件名: template.inc.php
*名 称: 模板调用主程序
*作 者: Victor Lee
*********************************************/
require_once 'class/Smarty.class.php';
$tpl = new Smarty();
$tpl->template_dir = 'templates/default/';
$tpl->compile_dir = 'compile';
$tpl->cache_dir = 'cache';
$tpl->left_delimiter = '<';
$tpl->right_delimiter = '>'; 配置程序中指定

Smarty简单配置代码

Smarty配置

 

<?php

define("ROOT",str_replace("\\","/",dirname(__FILE__)).‘/‘); //常量ROOT中指定项目根目录

//echo str_replace("\\","/",dirname(__FILE__))."/";

require ROOT.‘libs/Smarty.class.php‘; //加载Smarty类文件

$smarty = new Smarty(); //实例化Smarty对象<br>


//$smarty -> auto_literal = false; //就可以让定界符号使用空格
$smarty->setTemplateDir(ROOT.‘templates/‘); //设置所有模板文件存放位置
//$smarty->addTemplateDir(ROOT.‘templates2/‘); //添加一个模板文件夹
$smarty->setCompileDir(ROOT.‘templates_c/‘); //设置编译过的模板存放的目录
$smarty->addPluginsDir(ROOT.‘plugins/‘); //设置为模板扩充插件存放目录
$smarty->setCacheDir(ROOT.‘cache/‘); //设置缓存文件存放目录
$smarty->setConfigDir(ROOT.‘configs/‘); //设置模板配置文件存放目录

$smarty->caching = false; //设置Smarty缓存开关功能
$smarty->cache_lifetime = 60*60*24; //设置缓存模板有效时间一天
$smarty->left_delimiter = ‘<{‘; //设置模板语言中的左结束符
$smarty->right_delimiter = ‘}>‘; //设置模板语言中的右结束符





?>

 

以上是关于php smarty 配置的主要内容,如果未能解决你的问题,请参考以下文章

php smarty前后台模板路径的配置问题

第八十七天请假 PHP smarty模板配置以及简单的调用方式

php基础复习smarty模板

PHP Smarty 模板 读取配置文件变量

Smarty基础

Smarty简单配置代码